<?xml version="1.0" encoding="utf-8" ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->  
<html xmlns="http://www.w3.org/1999/xhtml"  
> 
<head><title>LILO
Generic boot loader for Linux
Version 21.5
User&#8217;s guide</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<meta name="generator" content="Bluefish 2.2.3" /> 
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" /> 
<!-- xhtml,charset=utf-8,html --> 
<meta name="src" content="user_21-5.tex" /> 
<meta name="date" content="2013-06-07T14:16:51+0200" /> 
<link rel="stylesheet" type="text/css" href="user_21-5.css" /> 
</head><body 
>
<div class="maketitle">



<h2 class="titleHead">LILO<br />
Generic boot loader for Linux<br />
Version 21.5<br />
&#x00A0;<br />
User&#8217;s guide</h2>
        <div class="author" ><span 
class="cmr-12">Werner Almesberger</span>
<br />         <span 
class="cmr-12">John R. Coffman</span>
<br /><span 
class="cmti-12">(reconstructed by Joachim Wiedorn)</span></div>
<br />
<div class="date" ><span 
class="cmr-12">July 17, 2000</span></div>
</div>
<h3 class="likesectionHead"><a 
 id="x1-1000"></a>Contents</h3>
<div class="tableofcontents">
<span class="sectionToc" >1 <a 
href="#x1-20001" id="QQ2-1-2">Overview</a></span>
<br />&#x00A0;<span class="subsectionToc" >1.1 <a 
href="#x1-30001.1" id="QQ2-1-3">Easy rules</a></span>
<br />&#x00A0;<span class="subsectionToc" >1.2 <a 
href="#x1-40001.2" id="QQ2-1-4">System overview</a></span>
<br /><span class="sectionToc" >2 <a 
href="#x1-50002" id="QQ2-1-5">Introduction</a></span>
<br />&#x00A0;<span class="subsectionToc" >2.1 <a 
href="#x1-60002.1" id="QQ2-1-6">Disk organization</a></span>
<br />&#x00A0;<span class="subsectionToc" >2.2 <a 
href="#x1-70002.2" id="QQ2-1-7">Booting basics</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.1 <a 
href="#x1-80002.2.1" id="QQ2-1-8">MS-DOS alone</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.2 <a 
href="#x1-90002.2.2" id="QQ2-1-9">LOADLIN</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.3 <a 
href="#x1-100002.2.3" id="QQ2-1-10">LILO started by DOS-MBR</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.4 <a 
href="#x1-110002.2.4" id="QQ2-1-11">Several alternate branches</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.5 <a 
href="#x1-120002.2.5" id="QQ2-1-12">LILO started by <span 
class="cmss-10x-x-109">BOOTACTV</span><span class="footnote-mark"><sup class="textsuperscript">1</sup></span></a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.6 <a 
href="#x1-130002.2.6" id="QQ2-1-13">LILO alone</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.2.7 <a 
href="#x1-140002.2.7" id="QQ2-1-14">Names</a></span>
<br />&#x00A0;<span class="subsectionToc" >2.3 <a 
href="#x1-150002.3" id="QQ2-1-15">Choosing the &#8220;right&#8221; boot concept</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.1 <a 
href="#x1-160002.3.1" id="QQ2-1-16">BIOS restrictions</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.2 <a 
href="#x1-170002.3.2" id="QQ2-1-17">One disk, Linux on a primary partition</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.3 <a 
href="#x1-180002.3.3" id="QQ2-1-18">One disk, Linux on a logical partition</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.4 <a 
href="#x1-190002.3.4" id="QQ2-1-19">Two disks, Linux (at least partially) on the first disk</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.5 <a 
href="#x1-200002.3.5" id="QQ2-1-20">Two disks, Linux on second disk, first disk has an extended partition</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.6 <a 
href="#x1-210002.3.6" id="QQ2-1-21">Two disks, Linux on second disk, first disk has no extended partition</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.7 <a 
href="#x1-220002.3.7" id="QQ2-1-22">More than two disks</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >2.3.8 <a 
href="#x1-230002.3.8" id="QQ2-1-23"><span 
class="cmtt-10x-x-109">/boot </span>on a DOS partition</a></span>
<br /><span class="sectionToc" >3 <a 
href="#x1-240003" id="QQ2-1-24">The boot prompt</a></span>
<br />&#x00A0;<span class="subsectionToc" >3.1 <a 
href="#x1-250003.1" id="QQ2-1-25">Boot command-line options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >3.1.1 <a 
href="#x1-260003.1.1" id="QQ2-1-26">Standard options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >3.1.2 <a 
href="#x1-270003.1.2" id="QQ2-1-27">Device-specific options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >3.1.3 <a 
href="#x1-280003.1.3" id="QQ2-1-28">Other options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >3.1.4 <a 
href="#x1-290003.1.4" id="QQ2-1-29">Repeating options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >3.1.5 <a 
href="#x1-300003.1.5" id="QQ2-1-30">Implicit options</a></span>
<br />&#x00A0;<span class="subsectionToc" >3.2 <a 
href="#x1-310003.2" id="QQ2-1-31">Boot image selection</a></span>
<br /><span class="sectionToc" >4 <a 
href="#x1-320004" id="QQ2-1-32">Map installer</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.1 <a 
href="#x1-330004.1" id="QQ2-1-33">Command-line options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.1 <a 
href="#x1-340004.1.1" id="QQ2-1-34">Show current installation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.2 <a 
href="#x1-350004.1.2" id="QQ2-1-35">Create or update map</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.3 <a 
href="#x1-360004.1.3" id="QQ2-1-36">Change default command line</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.4 <a 
href="#x1-370004.1.4" id="QQ2-1-37">Kernel name translation</a></span>

<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.5 <a 
href="#x1-380004.1.5" id="QQ2-1-38">De-installation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.6 <a 
href="#x1-390004.1.6" id="QQ2-1-39">Print version number</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.1.7 <a 
href="#x1-400004.1.7" id="QQ2-1-40">Options corresponding to configuration variables</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.2 <a 
href="#x1-410004.2" id="QQ2-1-41">Configuration</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.2.1 <a 
href="#x1-420004.2.1" id="QQ2-1-42">Syntax</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.2.2 <a 
href="#x1-430004.2.2" id="QQ2-1-43">Global options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.2.3 <a 
href="#x1-440004.2.3" id="QQ2-1-44">General per-image options</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.2.4 <a 
href="#x1-450004.2.4" id="QQ2-1-45">Per-image options for kernels</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.3 <a 
href="#x1-460004.3" id="QQ2-1-46">Boot image types</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.3.1 <a 
href="#x1-470004.3.1" id="QQ2-1-47">Booting kernel images from a file</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.3.2 <a 
href="#x1-480004.3.2" id="QQ2-1-48">Booting kernel images from a device</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.3.3 <a 
href="#x1-490004.3.3" id="QQ2-1-49">Booting a foreign operating system</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.4 <a 
href="#x1-500004.4" id="QQ2-1-50">Disk geometry</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.4.1 <a 
href="#x1-510004.4.1" id="QQ2-1-51">Obtaining the geometry</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.4.2 <a 
href="#x1-520004.4.2" id="QQ2-1-52">Specifying the geometry</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.5 <a 
href="#x1-530004.5" id="QQ2-1-53">Partition table manipulation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.5.1 <a 
href="#x1-540004.5.1" id="QQ2-1-54">Partition activation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.5.2 <a 
href="#x1-550004.5.2" id="QQ2-1-55">Partition type change rules</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.5.3 <a 
href="#x1-560004.5.3" id="QQ2-1-56">Partition type changes</a></span>
<br />&#x00A0;<span class="subsectionToc" >4.6 <a 
href="#x1-570004.6" id="QQ2-1-57">Keyboard translation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.6.1 <a 
href="#x1-580004.6.1" id="QQ2-1-58">Compiling keyboard translation tables</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >4.6.2 <a 
href="#x1-590004.6.2" id="QQ2-1-59">Using keyboard translation tables</a></span>
<br /><span class="sectionToc" >5 <a 
href="#x1-600005" id="QQ2-1-60">Installation and updates</a></span>
<br />&#x00A0;<span class="subsectionToc" >5.1 <a 
href="#x1-610005.1" id="QQ2-1-61">Installation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.1 <a 
href="#x1-620005.1.1" id="QQ2-1-62">Compatibility</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.2 <a 
href="#x1-630005.1.2" id="QQ2-1-63">Quick installation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.3 <a 
href="#x1-640005.1.3" id="QQ2-1-64">Files</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.4 <a 
href="#x1-650005.1.4" id="QQ2-1-65">Normal first-time installation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.5 <a 
href="#x1-660005.1.5" id="QQ2-1-66">Build-time configuration</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.1.6 <a 
href="#x1-670005.1.6" id="QQ2-1-67">Floppy disk installation</a></span>
<br />&#x00A0;<span class="subsectionToc" >5.2 <a 
href="#x1-680005.2" id="QQ2-1-68">Updates</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.2.1 <a 
href="#x1-690005.2.1" id="QQ2-1-69">LILO update</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.2.2 <a 
href="#x1-700005.2.2" id="QQ2-1-70">Kernel update</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >5.2.3 <a 
href="#x1-710005.2.3" id="QQ2-1-71">System upgrade</a></span>
<br />&#x00A0;<span class="subsectionToc" >5.3 <a 
href="#x1-720005.3" id="QQ2-1-72">LILO de-installation</a></span>
<br />&#x00A0;<span class="subsectionToc" >5.4 <a 
href="#x1-730005.4" id="QQ2-1-73">Installation of other operating systems</a></span>
<br /><span class="sectionToc" >6 <a 
href="#x1-740006" id="QQ2-1-74">Troubleshooting</a></span>
<br />&#x00A0;<span class="subsectionToc" >6.1 <a 
href="#x1-750006.1" id="QQ2-1-75">Map installer warnings and errors</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >6.1.1 <a 
href="#x1-760006.1.1" id="QQ2-1-76">Fatal errors</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >6.1.2 <a 
href="#x1-770006.1.2" id="QQ2-1-77">Warnings</a></span>
<br />&#x00A0;<span class="subsectionToc" >6.2 <a 
href="#x1-780006.2" id="QQ2-1-78">Boot loader messages</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >6.2.1 <a 
href="#x1-790006.2.1" id="QQ2-1-79">LILO start message</a></span>
<br />&#x00A0;&#x00A0;<span class="subsubsectionToc" >6.2.2 <a 
href="#x1-800006.2.2" id="QQ2-1-80">Disk error codes</a></span>
<br />&#x00A0;<span class="subsectionToc" >6.3 <a 
href="#x1-810006.3" id="QQ2-1-81">Other problems</a></span>
</div>
<!--l. 124--><p class="noindent" >&#x00A0;<br 
class="newline" /><span 
class="cmbx-10x-x-109">This document has only been partially updated and does reflect the status of Linux (until</span>
<span 
class="cmbx-10x-x-109">2.2.16) and of LILO</span><span 
class="cmbx-10x-x-109">&#x00A0;(until 21.5) in the year 2000. </span>&#x00A0;<br 
class="newline" />
</p><!--l. 132--><p class="noindent" >
</p>
<h3 class="sectionHead"><span class="titlemark">1   </span> <a 
 id="x1-20001"></a>Overview</h3>
<!--l. 134--><p class="noindent" >LILO&#x00A0;is a versatile boot loader for Linux. It does not depend on a specific file system, can boot Linux kernel
images from floppy disks and from hard disks and can even act as a &#8220;boot manager&#8221; for other operating
systems.<span class="footnote-mark"><a 
href="user_21-52.html#fn2x0"><sup class="textsuperscript">2</sup></a></span><a 
 id="x1-2001f2"></a>

</p><!--l. 141--><p class="noindent" >One of up to sixteen different images can be selected at boot time. Various parameters, such as the root
device, can be set independently for each kernel. LILO&#x00A0;can even be used as the master boot
record.
</p><!--l. 146--><p class="noindent" >This document introduces the basics of disk organization and booting, continues with an overview of
common boot techniques and finally describes installation and use of LILO&#x00A0;in greater detail. The
troubleshooting section at the end describes diagnostic messages and contains suggestions for most problems
that have been observed in the past.
</p><!--l. 152--><p class="noindent" >Please read at least the sections about installation and configuration if you&#8217;re already using an older version
of LILO. This distribution is accompanied by a file named <span 
class="cmtt-10x-x-109">INCOMPAT </span>that describes further incompatibilities
to older versions.
</p><!--l. 157--><p class="noindent" >For the impatient: there is a quick-installation script to create a simple but quite usable installation. See
section <a 
href="#x1-630005.1.2">5.1.2<!--tex4ht:ref: quickinst --></a> for details.
</p>
<h4 class="subsectionHead"><span class="titlemark">1.1   </span> <a 
 id="x1-30001.1"></a>Easy rules</h4>
<!--l. 164--><p class="noindent" >But wait <span 
class="cmmi-10x-x-109">&#x2026;</span> here are a few easy rules that will help you to avoid most problems people experience with
LILO:
</p>
     <ul class="itemize1">
     <li class="itemize"><span 
class="cmbx-10x-x-109">Don&#8217;t panic. </span>If something doesn&#8217;t work, try to find out what is wrong, try to verify your
     assumption and only then attempt to fix it.
     </li>
     <li class="itemize">Read the documentation. Especially if what the system does doesn&#8217;t correspond to what you
     think it should do.
     </li>
     <li class="itemize">Make sure you have an emergency boot disk, that you know how to use it, and that it is always
     kept up to date.
     </li>
     <li class="itemize">Run <span 
class="cmtt-10x-x-109">/sbin/lilo </span><span 
class="cmbx-10x-x-109">whenever </span>the kernel or any part of LILO, including its configuration file,
     has changed. When in doubt, run it. You can&#8217;t run <span 
class="cmtt-10x-x-109">/sbin/lilo </span>too many times.
     </li>
     <li class="itemize">If  performing  a  destructive  upgrade  and/or  erasing  your  Linux  partitions,  de-install
     LILO&#x00A0;<span 
class="cmbx-10x-x-109">before </span>that if using it as the MBR.
     </li>
     <li class="itemize">Don&#8217;t trust setup scripts. Always verify the <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>they create before booting.
     </li>
     <li class="itemize">If using a big disk, be prepared for inconveniences: you may have to use the <span 
class="cmtt-10x-x-109">linear </span>option.</li></ul>

<!--l. 188--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">1.2   </span> <a 
 id="x1-40001.2"></a>System overview</h4>
<!--l. 190--><p class="noindent" >LILO&#x00A0;is a collection of several programs and other files:
</p><!--l. 192--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmbx-10x-x-109">The map installer</span> </dt><dd 
class="description">is the program you run under Linux to put all files belonging to LILO&#x00A0;at the
     appropriate places and to record information about the location of data needed at boot time.
     This program normally resides in <span 
class="cmtt-10x-x-109">/sbin/lilo</span>. It has to be run to refresh that information
     whenever any part of the system that LILO&#x00A0;knows about changes, e.g. after installing a new
     kernel.
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">Various files</span> </dt><dd 
class="description">contain data LILO&#x00A0;needs at boot time, e.g. the boot loader. Those files normally reside
     in <span 
class="cmtt-10x-x-109">/boot</span>. The most important files are the boot loader (see below) and the map file (<span 
class="cmtt-10x-x-109">/boot/map</span>),
     where the map installer records the location of the kernel(s).<span class="footnote-mark"><a 
href="user_21-53.html#fn3x0"><sup class="textsuperscript">3</sup></a></span><a 
 id="x1-4001f3"></a>
     Another important file is the configuration file, which is normally called <span 
class="cmtt-10x-x-109">/etc/lilo.conf</span>
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">The boot loader</span> </dt><dd 
class="description">is the part of LILO&#x00A0;that is loaded by the BIOS and that loads kernels or the
     boot sectors of other operating systems. It also provides a simple command-line interface to
     interactively select the item to boot and to add boot options.</dd></dl>
<!--l. 215--><p class="noindent" >LILO&#x00A0;primarily accesses the following parts of the system:
</p><!--l. 217--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmbx-10x-x-109">The root file system partition</span> </dt><dd 
class="description">is important for two reasons: first, LILO&#x00A0;sometimes has to tell
     the kernel where to look for it. Second, it is frequently a convenient place for many other items
     LILO&#x00A0;uses, such as the boot sector, the <span 
class="cmtt-10x-x-109">/boot </span>directory, and the kernels.
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">The boot sector</span> </dt><dd 
class="description">contains the first part of LILO&#8217;s boot loader. It loads the much larger second-stage
     loader. Both loaders are typically stored in the file <span 
class="cmtt-10x-x-109">/boot/boot.b</span>
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">The kernel</span> </dt><dd 
class="description">is loaded and started by the boot loader. Kernels typically reside in the root directory
     or in <span 
class="cmtt-10x-x-109">/boot</span>.</dd></dl>
<!--l. 229--><p class="noindent" >Note that many of the files LILO&#x00A0;needs at boot time have to be accessible with the BIOS. This creates
certain restrictions, see section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a>.
</p><!--l. 233--><p class="noindent" >

</p>
<h3 class="sectionHead"><span class="titlemark">2   </span> <a 
 id="x1-50002"></a>Introduction</h3>
<!--l. 236--><p class="noindent" >The following sections describe how PCs boot in general and what has to be known when booting Linux
and using LILO&#x00A0;in particular.
</p><!--l. 241--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1   </span> <a 
 id="x1-60002.1"></a>Disk organization</h4>
<!--l. 244--><p class="noindent" >When designing a boot concept, it is important to understand some of the subtleties of how
PCs typically organize disks. The most simple case are floppy disks. They consist of a boot
sector, some administrative data (FAT or super block, etc.) and the data area. Because that
administrative data is irrelevant as far as booting is concerned, it is regarded as part of the data area for
simplicity.
</p><!--l. 251--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-50x.png" alt="|------------|----------------------|
|-Boot-sector--                      |
|                                   |
|             Data area             |
|                                   |
 ------------------------------------
" class="math-display"  /></center>
<!--l. 271--><p class="noindent" >The entire disk appears as one device (e.g. <span 
class="cmtt-10x-x-109">/dev/fd0</span>) on Linux.
</p><!--l. 273--><p class="noindent" >The MS-DOS boot sector has the following structure:
</p><!--l. 275--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-51x.png" alt="       0x000 |Jump--to-the-program--code-|
             |--------------------------|
       0x003 |                          |
             |     Disk parameters      |
             |--------------------------|
0x02C/0x03E  |                          |
             |      Program  code       |
             |                          |
             |                          |
       0x1FE |-Magic-number--(0xAA55-)--|
             ---------------------------|
" class="math-display"  /></center>
<!--l. 308--><p class="noindent" >LILO&#x00A0;uses a similar boot sector, but it does not contain the disk parameters part. This is no problem for
Minix, Ext2 or similar file systems, because they don&#8217;t look at the boot sector, but putting a LILO&#x00A0;boot
sector on an MS-DOS file system would make it inaccessible for MS-DOS.
</p><!--l. 314--><p class="noindent" >Hard disks are organized in a more complex way than floppy disks. They contain several data areas called
partitions. Up to four so-called primary partitions can exist on an MS-DOS hard disk. If more partitions are
needed, one primary partition is used as an extended partition that contains several logical
partitions.
</p><!--l. 320--><p class="noindent" >The first sector of each hard disk contains a partition table, and an extended partition and <span 
class="cmbx-10x-x-109">each </span>logical
partition contains a partition table too.
</p><!--l. 324--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-52x.png" alt="|------------------------------------------|
|Partition table                  /dev/hda   |
| |Partition-1-------------------/dev/hda1--|
| |                                        |
| |----------------------------------------|
| |Partition 2                   /dev/hda2  |
--------------------------------------------
" class="math-display"  /></center>
<!--l. 347--><p class="noindent" >The entire disk can be accessed as <span 
class="cmtt-10x-x-109">/dev/hda</span>, <span 
class="cmtt-10x-x-109">/dev/hdb</span>, <span 
class="cmtt-10x-x-109">/dev/sda</span>, etc. The primary partitions are
<span 
class="cmtt-10x-x-109">/dev/hda1</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> <span 
class="cmtt-10x-x-109">/dev/hda4</span>.
</p><!--l. 351--><p class="noindent" >
</p>

<center class="math-display" >
<img 
src="user_21-53x.png" alt="|------------------------------------------|
|Partition-table------------------/dev/hda---|
| |Partition 1                   /dev/hda1  |
| |----------------------------------------|
| |Partition 2                   /dev/hda2  |
| |                                        |
| |Extended--partition------------/dev/hda3--|
| | |--------------------------------------|
| | |Extended--partition-table---------------|
| | |Partition 3                 /dev/hda5  |
| | |--------------------------------------|
| | |Extended--partition-table---------------|
| | |Partition 4                 /dev/hda6  |
| | |                                      |
--------------------------------------------
" class="math-display"  /></center>
<!--l. 398--><p class="noindent" >This hard disk has two primary partitions and an extended partition that contains two logical partitions.
They are accessed as <span 
class="cmtt-10x-x-109">/dev/hda5</span> <span 
class="cmmi-10x-x-109">&#x2026;</span>
</p><!--l. 402--><p class="noindent" >Note that the partition tables of logical partitions are not accessible as the first blocks of some devices,
while the main partition table, all boot sectors and the partition tables of extended partitions
are.
</p><!--l. 406--><p class="noindent" >Partition tables are stored in partition boot sectors. Normally, only the partition boot sector of the entire
disk is used as a boot sector. It is also frequently called the master boot record (MBR). Its structure is as
follows:
</p><!--l. 411--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-54x.png" alt="       |------------------------|
0x000  |                        |
       |     Program code       |
       |                        |
       |------------------------|
0x1BE  |     Partition table     |
       |                        |
       |------------------------|
0x1FE  -Magic-number--(0xAA55--)--
" class="math-display"  /></center>
<!--l. 438--><p class="noindent" >The LILO&#x00A0;boot sector is designed to be usable as a partition boot sector. (I.e. there is room for the
partition table.) Therefore, the LILO&#x00A0;boot sector can be stored at the following locations:
</p>

     <ul class="itemize1">
     <li class="itemize">boot sector of a Linux floppy disk. (<span 
class="cmtt-10x-x-109">/dev/fd0</span>, <span 
class="cmmi-10x-x-109">&#x2026;</span>)
     </li>
     <li class="itemize">MBR of the first hard disk. (<span 
class="cmtt-10x-x-109">/dev/hda</span>, <span 
class="cmtt-10x-x-109">/dev/sda</span>, <span 
class="cmmi-10x-x-109">&#x2026;</span>)
     </li>
     <li class="itemize">boot sector of a primary Linux file system partition on the first hard disk. (<span 
class="cmtt-10x-x-109">/dev/hda1</span>, <span 
class="cmmi-10x-x-109">&#x2026;</span>)
     </li>
     <li class="itemize">partition boot sector of an extended partition on the first hard disk. (<span 
class="cmtt-10x-x-109">/dev/hda1</span>, <span 
class="cmmi-10x-x-109">&#x2026;</span>)<span class="footnote-mark"><a 
href="user_21-54.html#fn4x0"><sup class="textsuperscript">4</sup></a></span><a 
 id="x1-6001f4"></a></li></ul>
<!--l. 455--><p class="noindent" >It <span 
class="cmbx-10x-x-109">can&#8217;t </span>be stored at any of the following locations:
</p>
     <ul class="itemize1">
     <li class="itemize">boot sector of a non-Linux floppy disk or primary partition.
     </li>
     <li class="itemize">a Linux swap partition.
     </li>
     <li class="itemize">boot sector of a logical partition in an extended partition.<span class="footnote-mark"><a 
href="user_21-55.html#fn5x0"><sup class="textsuperscript">5</sup></a></span><a 
 id="x1-6002f5"></a>
     </li>
     <li class="itemize">on the second hard disk. (Unless for backup installations, if the current first disk will be removed
     or disabled, or if some other boot loader is used, that is capable of loading boot sectors from
     other drives.)</li></ul>
<!--l. 471--><p class="noindent" >Although LILO&#x00A0;tries to detect attempts to put its boot sector at an invalid location, you should not rely on
that.
</p><!--l. 475--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.2   </span> <a 
 id="x1-70002.2"></a>Booting basics</h4>
<!--l. 477--><p class="noindent" >When booting from a floppy disk, the first sector of the disk, the so-called boot sector, is loaded. That boot
sector contains a small program that loads the respective operating system. MS-DOS boot sectors also
contain a data area, where disk and file system parameters (cluster size, number of sectors, number of
heads, etc.) are stored.
</p><!--l. 483--><p class="noindent" >When booting from a hard disk, the very first sector of that disk, the so-called master boot
record (MBR) is loaded. This sector contains a loader program and the partition table of the
disk. The loader program usually loads the boot sector, as if the system was booting from a
floppy.

</p><!--l. 488--><p class="noindent" >Note that there is no functional difference between the MBR and the boot sector other than that the MBR
contains the partition information but doesn&#8217;t contain any file system-specific information (e.g. MS-DOS
disk parameters).
</p><!--l. 493--><p class="noindent" >The first 446 (0x1BE) bytes of the MBR are used by the loader program. They are followed by the partition
table, with a length of 64 (0x40) bytes. The last two bytes contain a magic number that is sometimes used
to verify that a given sector really is a boot sector.
</p><!--l. 498--><p class="noindent" >There is a large number of possible boot configurations. The most common ones are described in the
following sections.
</p><!--l. 502--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.1   </span> <a 
 id="x1-80002.2.1"></a>MS-DOS alone</h5>
<!--l. 504--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-55x.png" alt="|--------------------------------------------------------|
|Master-Boot-Record-Boot-sector---------Operating system--|
-DOS--MBR--------&#x2192;----MS--DOS--------&#x2192;----COMMAND.COM--------
" class="math-display"  /></center>
<!--l. 511--><p class="noindent" >This is what usually happens when MS-DOS boots from a hard disk: the DOS-MBR determines the active
partition and loads the MS-DOS boot sector. This boot sector loads MS-DOS and finally passes control to
<span 
class="cmtt-10x-x-109">COMMAND.COM</span>. (This is greatly simplified.)
</p><!--l. 517--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.2   </span> <a 
 id="x1-90002.2.2"></a>LOADLIN</h5>
<!--l. 520--><p class="noindent" >
</p>

<center class="math-display" >
<img 
src="user_21-56x.png" alt="|--------------------------------------------------------------|
|MasterBoot-Record-Boot--sector-------Operating-systems-----------
|DOS -MBR  ----&#x2192;   MS  -DOS  --- -&#x2192;   COMMAND.COM
---------------&#x2192;---LOADLIN-------&#x2192;---Linux----------------------
" class="math-display"  /></center>
<!--l. 528--><p class="noindent" >A typical <span 
class="cmss-10x-x-109">LOADLIN </span>setup: everything happens like when booting MS-DOS, but in <span 
class="cmtt-10x-x-109">CONFIG.SYS </span>or
<span 
class="cmtt-10x-x-109">AUTOEXEC.BAT</span>, LOADLIN is invoked. Typically, a program like <span 
class="cmtt-10x-x-109">BOOT.SYS </span>is used to choose among
configuration sections in <span 
class="cmtt-10x-x-109">CONFIG.SYS </span>and <span 
class="cmtt-10x-x-109">AUTOEXEC.BAT</span>. This approach has the pleasant property that no
boot sectors have to be altered.
</p><!--l. 535--><p class="noindent" >Please refer to the documentation accompanying the LOADLIN package for installation instructions and
further details.
</p><!--l. 539--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.3   </span> <a 
 id="x1-100002.2.3"></a>LILO&#x00A0;started by DOS-MBR</h5>
<!--l. 542--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-57x.png" alt="|--------------------------------------------------------|
|Master Boot Record Boot sector        Operating system   |
|DOS---MBR-------&#x2192;---LILO-----------&#x2192;---Linux-------------|
|                                                        |
----------------&#x2192;---other-OS-----------------------------
" class="math-display"  /></center>
<!--l. 550--><p class="noindent" >This is a &#8220;safe&#8221; LILO&#x00A0;setup: LILO&#x00A0;is booted by the DOS-MBR. No other boot sectors have to be touched.
If the other OS (or one of them, if there are several other operating systems being used) should
be booted without using LILO, the other partition has to be marked &#8220;active&#8221; with <span 
class="cmss-10x-x-109">fdisk </span>or
<span 
class="cmss-10x-x-109">activate</span>.
</p><!--l. 556--><p class="noindent" >Installation: </p>
     <ul class="itemize1">
     <li class="itemize">install LILO&#x00A0;with its boot sector on the Linux partition.
     </li>
     <li class="itemize">use <span 
class="cmss-10x-x-109">fdisk </span>or <span 
class="cmss-10x-x-109">activate </span>to make that partition active.
     </li>
     <li class="itemize">reboot.</li></ul>

<!--l. 563--><p class="noindent" >Deinstallation: </p>
     <ul class="itemize1">
     <li class="itemize">make a different partition active.
     </li>
     <li class="itemize">install whatever should replace LILO&#x00A0;and/or Linux.</li></ul>
<!--l. 570--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.4   </span> <a 
 id="x1-110002.2.4"></a>Several alternate branches</h5>
<!--l. 575--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-58x.png" alt="|--------------------------------------------------------------|
|MasterBoot-Record-Boot--sector-------Operating-systems-----------
|DOS -MBR  ----&#x2192;   MS  -DOS  --- -&#x2192;   COMMAND.COM
|             -&#x2192;   LOADLIN    ---&#x2192;   Linux
|             -&#x2192;   LILO  ----- --&#x2192;   Linux
---------------&#x2192;---MS---DOS--&#8212;--&#x22C5;&#x22C5;&#x22C5;------------------------------
" class="math-display"  /></center>
<!--l. 585--><p class="noindent" >An extended form of the above setup: the MBR is not changed and both branches can either boot Linux or
MS-DOS. (LILO&#x00A0;could also boot other operating systems.)
</p><!--l. 590--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.5   </span> <a 
 id="x1-120002.2.5"></a>LILO&#x00A0;started by <span 
class="cmss-10x-x-109">BOOTACTV</span><span class="footnote-mark"><a 
href="user_21-56.html#fn6x0"><sup class="textsuperscript">6</sup></a></span></h5>
<!--l. 593--><p class="noindent" ><a 
 id="x1-12001f6"></a>
</p><!--l. 596--><p class="noindent" >

</p>
<center class="math-display" >
<img 
src="user_21-59x.png" alt="|--------------------------------------------------------|
|Master-Boot-Record-Boot-sector--------Operating-system---|
|BOOTACTV     --&#x2192;   LILO  ------- -&#x2192;   Linux             |
|             - &#x2192;   other OS
---------------------------------------------------------
" class="math-display"  /></center>
<!--l. 604--><p class="noindent" >Here, the MBR is replaced by <span 
class="cmss-10x-x-109">BOOTACTV </span>(or any other interactive boot partition
selector) and the choice between Linux and the other operating system(s) can be made
at boot time. This approach should be used if LILO&#x00A0;fails to boot the other operating
system(s).<span class="footnote-mark"><a 
href="user_21-57.html#fn7x0"><sup class="textsuperscript">7</sup></a></span><a 
 id="x1-12002f7"></a>
</p><!--l. 612--><p class="noindent" >Installation: </p>
     <ul class="itemize1">
     <li class="itemize">boot Linux.
     </li>
     <li class="itemize">make a backup copy of your MBR on a floppy disk, e.g. <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/fd/MBR</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=512</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span>
     </li>
     <li class="itemize">install LILO&#x00A0;with the boot sector on the Linux partition.
     </li>
     <li class="itemize">install <span 
class="cmss-10x-x-109">BOOTACTV </span>as the MBR, e.g. <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=bootactv.bin</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=446</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span>
     </li>
     <li class="itemize">reboot.</li></ul>
<!--l. 623--><p class="noindent" >Deinstallation: </p>
     <ul class="itemize1">
     <li class="itemize">boot Linux.
     </li>
     <li class="itemize">restore the old MBR, e.g. <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=/MBR</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=446</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span> <br 
class="newline" />or <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">FDISK</span><span 
class="cmtt-10x-x-109">&#x00A0;/MBR</span></span></span> under MS-DOS.</li></ul>
<!--l. 631--><p class="noindent" >If replacing the MBR appears undesirable and if a second Linux partition exists (e.g. <span 
class="cmtt-10x-x-109">/usr</span>,
<span 
class="cmbx-10x-x-109">not </span>a swap partition), <span 
class="cmss-10x-x-109">BOOTACTV </span>can be merged with the partition table and stored as the

&#8220;boot sector&#8221; of that partition. Then, the partition can be marked active to be booted by the
DOS-MBR.
</p><!--l. 637--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-1">
#&#x00A0;dd&#x00A0;if=/dev/hda&#x00A0;of=/dev/hda3&#x00A0;bs=512&#x00A0;count=1
&#x00A0;<br />#&#x00A0;dd&#x00A0;if=bootactv.bin&#x00A0;of=/dev/hda3&#x00A0;bs=446&#x00A0;count=1</div>
<!--l. 641--><p class="nopar" >
</p><!--l. 643--><p class="noindent" ><span 
class="cmbx-10x-x-109">WARNING: </span>Whenever the disk is re-partitioned, the merged boot sector on that &#8220;spare&#8221; Linux partition
has to be updated too.
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.6   </span> <a 
 id="x1-130002.2.6"></a>LILO&#x00A0;alone</h5>
<!--l. 650--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-510x.png" alt="|------------------------------------|
|MasterBoot-Record-Operating-system--|
|LILO --- -----&#x2192;   Linux             |
|             -&#x2192;   other OS          |
--------------------------------------
" class="math-display"  /></center>
<!--l. 658--><p class="noindent" >LILO&#x00A0;can also take over the entire boot procedure. If installed as the MBR, LILO&#x00A0;is responsible for either
booting Linux or any other OS. This approach has the disadvantage, that the old MBR is overwritten and
has to be restored (either from a backup copy, with <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">FDISK</span><span 
class="cmtt-10x-x-109">&#x00A0;/MBR</span></span></span> on recent versions of MS-DOS or
by overwriting it with something like <span 
class="cmss-10x-x-109">BOOTACTV</span>) if Linux should ever be removed from the
system.
</p><!--l. 665--><p class="noindent" >You should verify that LILO&#x00A0;is able to boot your other operating system(s) before relying on this
method.
</p><!--l. 668--><p class="noindent" >Installation: </p>
     <ul class="itemize1">
     <li class="itemize">boot Linux.
     </li>
     <li class="itemize">make a backup copy of your MBR on a floppy disk, e.g. <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/fd/MBR</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=512</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span>
     </li>
     <li class="itemize">install LILO&#x00A0;with its boot sector as the MBR.

     </li>
     <li class="itemize">reboot.</li></ul>
<!--l. 677--><p class="noindent" >Deinstallation: </p>
     <ul class="itemize1">
     <li class="itemize">boot Linux.
     </li>
     <li class="itemize">restore the old MBR, e.g. <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=/fd/MBR</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=446</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span></li></ul>
<!--l. 684--><p class="noindent" >If you&#8217;ve installed LILO&#x00A0;as the master boot record, you have to explicitly specify the boot sector
(configuration variable <span 
class="cmtt-10x-x-109">boot=</span><span 
class="cmmi-10x-x-109">&#x2026;</span>) when updating the map. Otherwise, it will try to use the boot sector of
your current root partition, which will usually work, but it will probably leave your system
unbootable.
</p><!--l. 691--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.2.7   </span> <a 
 id="x1-140002.2.7"></a>Names</h5>
<!--l. 693--><p class="noindent" >The following names have been used to describe boot sectors or parts of operating systems:
</p><!--l. 696--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;DOS-MBR&#8221;</span> </dt><dd 
class="description">is the original MS-DOS MBR. It scans the partition table for a partition that is
     marked &#8220;active&#8221; and loads the boot sector of that partition. Programs like MS-DOS&#8217; <span 
class="cmss-10x-x-109">FDISK</span>,
     Linux <span 
class="cmss-10x-x-109">fdisk </span>or <span 
class="cmss-10x-x-109">activate </span>(accompanies LILO) can change the active marker in the partition table.
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;MS-DOS&#8221;</span> </dt><dd 
class="description">denotes the MS-DOS boot sector that loads the other parts of the system (<span 
class="cmtt-10x-x-109">IO.SYS</span>,
     etc.).
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;COMMAND.COM&#8221;</span> </dt><dd 
class="description">is the standard command interpreter of MS-DOS.
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;LOADLIN&#8221;</span> </dt><dd 
class="description">is a program that loads a Linux kernel image from an MS-DOS partition into memory
     and executes it. It is usually invoked from <span 
class="cmtt-10x-x-109">CONFIG.SYS </span>and is used in combination with a
     <span 
class="cmtt-10x-x-109">CONFIG.SYS </span>configuration switcher, like BOOT.SYS.<span class="footnote-mark"><a 
href="user_21-58.html#fn8x0"><sup class="textsuperscript">8</sup></a></span><a 
 id="x1-14001f8"></a>
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;LILO&#8221;</span> </dt><dd 
class="description">can either load a Linux kernel or the boot sector of any other operating system. It has a first

     stage boot sector that loads the remaining parts of LILO&#x00A0;from various locations.<span class="footnote-mark"><a 
href="user_21-59.html#fn9x0"><sup class="textsuperscript">9</sup></a></span><a 
 id="x1-14002f9"></a>
     </dd><dt class="description">
<span 
class="cmbx-10x-x-109">&#8220;BOOTACTV&#8221;</span> </dt><dd 
class="description">permits interactive selection of the partition from which the boot sector should
     be read. If no key is pressed within a given interval, the partition marked active is booted.
     <span 
class="cmss-10x-x-109">BOOTACTV </span>is included in the <span 
class="cmss-10x-x-109">pfdisk </span>package. There are also several similar programs, like
     PBOOT and OS-BS.<span class="footnote-mark"><a 
href="user_21-510.html#fn10x0"><sup class="textsuperscript">10</sup></a></span><a 
 id="x1-14003f10"></a></dd></dl>
<!--l. 739--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.3   </span> <a 
 id="x1-150002.3"></a>Choosing the &#8220;right&#8221; boot concept</h4>
<!--l. 741--><p class="noindent" >Although LILO&#x00A0;can be installed in many different ways, the choice is usually limited by the present
setup and therefore, typically only a small number of configurations which fit naturally into an
existing system remains. The following sections describe various possible cases. See also section
<a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a>.
</p><!--l. 747--><p class="noindent" >The configuration file <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>for the examples could look like this:

</p>
<div class="verbatim" id="verbatim-2">
boot&#x00A0;=&#x00A0;/dev/hda2
&#x00A0;<br />compact
&#x00A0;<br />image&#x00A0;=&#x00A0;/vmlinuz
&#x00A0;<br />image&#x00A0;=&#x00A0;/vmlinuz.old
&#x00A0;<br />other&#x00A0;=&#x00A0;/dev/hda1
&#x00A0;<br />&#x00A0;&#x00A0;table&#x00A0;=&#x00A0;/dev/hda
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;msdos</div>
<!--l. 758--><p class="nopar" >
</p><!--l. 760--><p class="noindent" >It installs a Linux kernel image (<span 
class="cmtt-10x-x-109">/vmlinuz</span>), an alternate Linux kernel image (<span 
class="cmtt-10x-x-109">/vmlinuz.old</span>) and a chain
loader to boot MS-DOS from <span 
class="cmtt-10x-x-109">/dev/hda1</span>. The option <span 
class="cmtt-10x-x-109">compact </span>on the second line instructs the map installer
to optimize loading.
</p><!--l. 765--><p class="noindent" >In all examples, the names of the IDE-type hard disk devices (<span 
class="cmtt-10x-x-109">/dev/hda</span><span 
class="cmmi-10x-x-109">&#x2026;</span>) are used. Everything applies to
other disk types (e.g. SCSI disks; <span 
class="cmtt-10x-x-109">/dev/sda</span><span 
class="cmmi-10x-x-109">&#x2026;</span>) too.
</p><!--l. 770--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.1   </span> <a 
 id="x1-160002.3.1"></a>BIOS restrictions</h5>
<!--l. 773--><p class="noindent" >Nowadays, an increasing number of systems is equipped with comparably large disks or even with
multiple disks. At the time the disk interface of the standard PC BIOS has been designed (about
16 years ago), such configurations were apparently considered to be too unlikely to be worth
supporting.
</p><!--l. 778--><p class="noindent" >The most common BIOS restrictions that affect LILO&#x00A0;are the limitation to two hard disks and the inability
to access more than 1024 cylinders per disk. LILO&#x00A0;can detect both conditions, but in order to work around
the underlying problems, manual intervention is necessary.
</p><!--l. 783--><p class="noindent" >The drive limit does not exist in every BIOS. Some modern motherboards and disk controllers
are equipped with a BIOS that supports more (typically four) disk drives. When attempting
to access the third, fourth, etc. drive, LILO&#x00A0;prints a warning message but continues. Unless
the BIOS really supports more than two drives, the system will <span 
class="cmbx-10x-x-109">not </span>be able to boot in that
case.<span class="footnote-mark"><a 
href="user_21-511.html#fn11x0"><sup class="textsuperscript">11</sup></a></span><a 
 id="x1-16001f11"></a>
</p><!--l. 792--><p class="noindent" >The cylinder limit is a very common problem with IDE disks. There, the number of cylinders may already
exceed 1024 if the drive has a capacity of more than 504 MB. Many SCSI driver BIOSes present the disk
geometry in a way that makes the limit occur near 1 GB. Modern disk controllers may even push

the limit up to about 8 GB. All cylinders beyond the 1024th are inaccessible for the BIOS.
LILO&#x00A0;detects this problem and aborts the installation (unless the <span 
class="cmtt-10x-x-109">linear </span>option is used, see section
<a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>).
</p><!--l. 801--><p class="noindent" >Note that large partitions that only partially extend into the &#8220;forbidden zone&#8221; are still in jeopardy even
if they appear to work at first, because the file system does not know about the restrictions
and may allocate disk space from the area beyond the 1024th cylinder when installing new
kernels. LILO&#x00A0;therefore prints a warning message but continues as long as no imminent danger
exists.
</p><!--l. 808--><p class="noindent" >There are four approaches of how such problems can be solved: </p>
     <ul class="itemize1">
     <li class="itemize">use of a different partition which is on an accessible disk and which does not exceed the 1024
     cylinder limit. If there is only a DOS partition which fulfills all the criteria, that partition can
     be used to store the relevant files. (See section <a 
href="#x1-230002.3.8">2.3.8<!--tex4ht:ref: viados --></a>.)
     </li>
     <li class="itemize">rearranging partitions and disks. This is typically a destructive operation, so extra care should
     be taken to make good backups.
     </li>
     <li class="itemize">if the system is running DOS or Windows 95, <span 
class="cmss-10x-x-109">LOADLIN </span>can be used instead of LILO.
     </li>
     <li class="itemize">if all else fails, installation of a more capable BIOS, a different controller or a different disk
     configuration.</li></ul>
<!--l. 822--><p class="noindent" >LILO&#x00A0;depends on the BIOS to load the following items: </p>
     <ul class="itemize1">
     <li class="itemize"><span 
class="cmtt-10x-x-109">/boot/boot.b</span>
     </li>
     <li class="itemize"><span 
class="cmtt-10x-x-109">/boot/map </span>(created when running <span 
class="cmtt-10x-x-109">/sbin/lilo</span>)
     </li>
     <li class="itemize">all kernels
     </li>
     <li class="itemize">the boot sectors of all other operating systems it boots
     </li>
     <li class="itemize">the startup message, if one has been defined</li></ul>
<!--l. 831--><p class="noindent" >Normally, this implies that the Linux root file system should be in the &#8220;safe&#8221; area. However, it is already
sufficient to put all kernels into <span 
class="cmtt-10x-x-109">/boot </span>and to either mount a &#8220;good&#8221; partition on <span 
class="cmtt-10x-x-109">/boot </span>or to let <span 
class="cmtt-10x-x-109">/boot </span>be a
symbolic link pointing to or into such a partition.
</p><!--l. 837--><p class="noindent" >See also <span 
class="cmtt-10x-x-109">/usr/src/linux/Documentation/ide.txt </span>(or <span 
class="cmtt-10x-x-109">/usr/src/linux/drivers/block/README.ide </span>in
older kernels) for a detailed description of problems with large disks.
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.2   </span> <a 
 id="x1-170002.3.2"></a>One disk, Linux on a primary partition</h5>

<!--l. 844--><p class="noindent" >If at least one primary partition of the first hard disk is used as a Linux file system (<span 
class="cmtt-10x-x-109">/</span>, <span 
class="cmtt-10x-x-109">/usr</span>, etc. but <span 
class="cmbx-10x-x-109">not </span>as
a swap partition), the LILO&#x00A0;boot sector should be stored on that partition and it should be booted by the
original master boot record or by a program like <span 
class="cmss-10x-x-109">BOOTACTV</span>.
</p><!--l. 851--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-511x.png" alt="   |------------------------|
   |MBR----------/dev/hda---|
   | |MS--DOS----/dev/hda1--|
&#x2192;  ---Linux-/----/dev/hda2---
" class="math-display"  /></center>
<!--l. 870--><p class="noindent" >In this example, the <span 
class="cmtt-10x-x-109">boot </span>variable could be omitted, because the boot sector is on the root
partition.
</p><!--l. 874--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.3   </span> <a 
 id="x1-180002.3.3"></a>One disk, Linux on a logical partition</h5>
<!--l. 876--><p class="noindent" >If no primary partition is available for Linux, but at least one logical partition of an extended partition on
the first hard disk contains a Linux file system, the LILO&#x00A0;boot sector should be stored in the partition
sector of the extended partition and it should be booted by the original master boot record or by a program
like <span 
class="cmss-10x-x-109">BOOTACTV</span>.
</p><!--l. 882--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-512x.png" alt="   |------------------------|
   |MBR----------/dev/hda---|
   | |MS -DOS    /dev/hda1  |
&#x2192;  | |Extended---/dev/hda2--|
   | |  |Linux---/dev/hda5--|
   | |  |-------------------|
   ------...-----/dev/hda6---
" class="math-display"  /></center>

<!--l. 909--><p class="noindent" >Because many disk partitioning programs refuse to make an extended partition (in our example <span 
class="cmtt-10x-x-109">/dev/hda2</span>)
active, you might have to use <span 
class="cmss-10x-x-109">activate</span>, which comes with the LILO&#x00A0;distribution.
</p><!--l. 913--><p class="noindent" >OS/2 BootManager should be able to boot LILO&#x00A0;boot sectors from logical partitions. The installation on
the extended partition itself is not necessary in this case.
</p><!--l. 918--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.4   </span> <a 
 id="x1-190002.3.4"></a>Two disks, Linux (at least partially) on the first disk</h5>
<!--l. 920--><p class="noindent" >This case is equivalent to the configurations where only one disk is in the system. The Linux boot sector
resides on the first hard disk and the second disk is used later in the boot process.
</p><!--l. 924--><p class="noindent" >Only the location of the boot sector matters &#8211; everything else (<span 
class="cmtt-10x-x-109">/boot/boot.b</span>, <span 
class="cmtt-10x-x-109">/boot/map</span>, the root file
system, a swap partition, other Linux file systems, etc.) can be located anywhere on the second disk,
provided that the constraints described in section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a> are met.
</p><!--l. 932--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.5   </span> <a 
 id="x1-200002.3.5"></a>Two disks, Linux on second disk, first disk has an extended partition</h5>
<!--l. 934--><p class="noindent" >If there is no Linux partition on the first disk, but there is an extended partition, the LILO&#x00A0;boot sector can
be stored in the partition sector of the extended partition and it should be booted by the original master
boot record or by a program like <span 
class="cmss-10x-x-109">BOOTACTV</span>.
</p><!--l. 939--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-513x.png" alt="   |-------First-disk-------|  |-----Second--disk-------|
   |MBR          /dev/hda   |  |MBR          /dev/hdb   |
   |  |MS--DOS----/dev/hda1--|  | |Linux------/dev/hdb1--|
&#x2192;  |  |Extended--/dev/hda2--|  | |...--------/dev/hdb2--|
   |  | |-------------------|  | |                      |
   |  | |...-----/dev/hda5--|  | |                      |
   ------...-----/dev/hda6---  --------------------------
" class="math-display"  /></center>
<!--l. 974--><p class="noindent" >The program <span 
class="cmss-10x-x-109">activate</span>, that accompanies LILO, may have to be used to set the active marker on an extended
partition, because MS-DOS&#8217; <span 
class="cmss-10x-x-109">FDISK </span>and some older version of Linux <span 
class="cmss-10x-x-109">fdisk </span>refuse to do that. (Which is
generally a good idea.)

</p><!--l. 981--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.6   </span> <a 
 id="x1-210002.3.6"></a>Two disks, Linux on second disk, first disk has no extended partition</h5>
<!--l. 983--><p class="noindent" >If there is neither a Linux partition nor an extended partition on the first disk, then there&#8217;s only one place
left, where a LILO&#x00A0;boot sector could be stored: the master boot record.
</p><!--l. 987--><p class="noindent" >In this configuration, LILO&#x00A0;is responsible for booting all other operating systems too.
</p><!--l. 991--><p class="noindent" >
</p>
<center class="math-display" >
<img 
src="user_21-514x.png" alt="   |-------First-disk-------|  |-----Second--disk-------|
&#x2192;  |MBR----------/dev/hda---|  |MBR----------/dev/hdb---|
   |  |MS--DOS----/dev/hda1--|  | |Linux------/dev/hdb1--|
   ----...-------/dev/hda2---  ---...--------/dev/hdb2---
" class="math-display"  /></center>
<!--l. 1019--><p class="noindent" >You should back up your old MBR before installing LILO&#x00A0;and verify that LILO&#x00A0;is able to boot your other
operating system(s) before relying on this approach.
</p><!--l. 1023--><p class="noindent" >The line <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">boot</span><span 
class="cmtt-10x-x-109">&#x00A0;=</span><span 
class="cmtt-10x-x-109">&#x00A0;/dev/hda2</span></span></span> in <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>would have to be changed to <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">boot</span><span 
class="cmtt-10x-x-109">&#x00A0;=</span><span 
class="cmtt-10x-x-109">&#x00A0;/dev/hda</span></span></span> in this
example.
</p><!--l. 1027--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.7   </span> <a 
 id="x1-220002.3.7"></a>More than two disks</h5>
<!--l. 1029--><p class="noindent" >On systems with more than two disks, typically only the first two can be accessed. The configuration choices
are therefore the same as with two disks.
</p><!--l. 1033--><p class="noindent" >When attempting to access one of the extra disks, LILO&#x00A0;displays a warning message (<span 
class="cmtt-10x-x-109">Warning: BIOS</span>
<span 
class="cmtt-10x-x-109">drive 0x</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmtt-10x-x-109">may not be accessible</span>) but does not abort. This is done in order to allow the lucky
few whose BIOS (or controller-BIOS) does support more than two drives to make use of this feature. By all
others, this warning should be considered a fatal error.
</p><!--l. 1040--><p class="noindent" >Note that the two disks restriction is only imposed by the BIOS. Linux normally has no problems using all
disks once it is booted.

</p><!--l. 1044--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">2.3.8   </span> <a 
 id="x1-230002.3.8"></a><span 
class="cmtt-10x-x-109">/boot </span>on a DOS partition</h5>
<!--l. 1047--><p class="noindent" >Recent kernels support all the functions LILO&#x00A0;needs to map files also on MS-DOS (or UMSDOS) file
systems. Since DOS partitions tend to occupy exactly the places where BIOS restrictions (see section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a>)
are invisible, they&#8217;re an ideal location for <span 
class="cmtt-10x-x-109">/boot </span>if the native Linux file systems can&#8217;t be used because of
BIOS problems.
</p><!--l. 1053--><p class="noindent" >In order to accomplish this, the DOS partition is mounted read-write, a directory (e.g. <span 
class="cmtt-10x-x-109">/dos/linux</span>) is
created, all files from <span 
class="cmtt-10x-x-109">/boot </span>are moved to that directory, <span 
class="cmtt-10x-x-109">/boot </span>is replaced by a symbolic link to it, the
kernels are also moved to the new directory, their new location is recorded in <span 
class="cmtt-10x-x-109">/etc/lilo.conf</span>, and finally
<span 
class="cmtt-10x-x-109">/sbin/lilo </span>is run.
</p><!--l. 1060--><p class="noindent" >From then on, new kernels must always be copied into that directory on the DOS partition
before running <span 
class="cmtt-10x-x-109">/sbin/lilo</span>, e.g. when recompiling a kernel, the standard procedure changes
from

</p>
<div class="verbatim" id="verbatim-3">
#&#x00A0;make&#x00A0;zlilo</div>
<!--l. 1066--><p class="nopar" >
</p><!--l. 1068--><p class="noindent" >to

</p>
<div class="verbatim" id="verbatim-4">
#&#x00A0;make&#x00A0;zImage
&#x00A0;<br />#&#x00A0;mv&#x00A0;/dos/linux/vmlinuz&#x00A0;/dos/linux/vmlinuz.old
&#x00A0;<br />#&#x00A0;mv&#x00A0;arch/i386/boot/zImage&#x00A0;/dos/linux/vmlinuz
&#x00A0;<br />#&#x00A0;/sbin/lilo</div>
<!--l. 1075--><p class="nopar" >
</p><!--l. 1077--><p class="noindent" ><span 
class="cmbx-10x-x-109">WARNING: </span>De-fragmenting such a DOS partition is likely to make Linux or even the whole
system unbootable. Therefore, the DOS partition should either not be de-fragmented, or a Linux
boot disk should be prepared (and tested) to bring up Linux and to run <span 
class="cmtt-10x-x-109">/sbin/lilo </span>after the
de-fragmentation.<span class="footnote-mark"><a 
href="user_21-512.html#fn12x0"><sup class="textsuperscript">12</sup></a></span><a 
 id="x1-23001f12"></a>
</p><!--l. 1087--><p class="noindent" >

</p>
<h3 class="sectionHead"><span class="titlemark">3   </span> <a 
 id="x1-240003"></a>The boot prompt</h3>
<!--l. 1091--><p class="noindent" >Immediately after it&#8217;s loaded, LILO&#x00A0;checks whether one of the following is happening:
</p>
     <ul class="itemize1">
     <li class="itemize">any of the [Shift], [Control] or [Alt] keys is pressed.
     </li>
     <li class="itemize">[CapsLock] or [ScrollLock] is set.</li></ul>
<!--l. 1100--><p class="noindent" >If this is the case, LILO&#x00A0;displays the <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">boot:</span></span></span> prompt and waits for the name of a boot
image (i.e. Linux kernel or other operating system). Otherwise, it boots the default boot
image<span class="footnote-mark"><a 
href="user_21-513.html#fn13x0"><sup class="textsuperscript">13</sup></a></span><a 
 id="x1-24001f13"></a>
or &#8211; if a delay has been specified &#8211; waits for one of the listed activities until that amount of time has
passed.
</p><!--l. 1110--><p class="noindent" >At the boot prompt, the name of the image to boot can be entered. Typing errors can be corrected with
[BackSpace], [Delete], [Ctrl U] and [Ctrl X]. A list of known images can be obtained by pressing [?] or
[Tab].
</p><!--l. 1115--><p class="noindent" >If [Enter] is pressed and no file name has been entered, the default image is booted.
</p>
<h4 class="subsectionHead"><span class="titlemark">3.1   </span> <a 
 id="x1-250003.1"></a>Boot command-line options</h4>
<!--l. 1121--><p class="noindent" >LILO&#x00A0;is also able to pass command-line options to the kernel. Command-line options are words that follow
the name of the boot image and that are separated by spaces.
</p><!--l. 1125--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-5">
boot:&#x00A0;linux&#x00A0;single&#x00A0;root=200</div>
<!--l. 1128--><p class="nopar" >
</p><!--l. 1130--><p class="noindent" >This document only gives an overview of boot options. Please consult Paul Gortmaker&#8217;s BootPrompt-HOWTO
for a more complete and more up to date list. You can get it from
</p><!--l. 1134--><p class="noindent" ><span 
class="cmtt-10x-x-109">ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/BootPrompt-HOWTO.gz</span>
</p><!--l. 1136--><p class="noindent" >or from one of the many mirror sites.
</p><!--l. 1139--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">3.1.1   </span> <a 
 id="x1-260003.1.1"></a>Standard options</h5>
<!--l. 1141--><p class="noindent" >Recent kernels recognize a large number of options, among them are <span 
class="cmtt-10x-x-109">debug</span>, <span 
class="cmtt-10x-x-109">no387</span>, <span 
class="cmtt-10x-x-109">no-hlt</span>, <span 
class="cmtt-10x-x-109">ramdisk=</span><span 
class="cmti-10x-x-109">size</span>,
<span 
class="cmtt-10x-x-109">reserve=</span><span 
class="cmti-10x-x-109">base</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmti-10x-x-109">size</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmmi-10x-x-109">&#x2026;</span>, <span 
class="cmtt-10x-x-109">root=</span><span 
class="cmti-10x-x-109">device</span>, <span 
class="cmtt-10x-x-109">ro</span>, and <span 
class="cmtt-10x-x-109">rw</span>. All current <span 
class="cmss-10x-x-109">init </span>programs also recognize the option <span 
class="cmtt-10x-x-109">single</span>.
The options <span 
class="cmtt-10x-x-109">lock </span>and <span 
class="cmtt-10x-x-109">vga </span>are processed by the boot loader itself. Boot command-line options are always
case-sensitive.
</p><!--l. 1149--><p class="noindent" ><span 
class="cmtt-10x-x-109">single </span>boots the system in single-user mode. This bypasses most system initialization procedures and
directly starts a root shell on the console. Multi-user mode can typically be entered by exiting the
single-user shell or by rebooting.
</p><!--l. 1154--><p class="noindent" ><span 
class="cmtt-10x-x-109">root=</span><span 
class="cmti-10x-x-109">device </span>changes the root device. This overrides settings that may have been made in the
boot image and on the LILO&#x00A0;command line. <span 
class="cmti-10x-x-109">device </span>is either the hexadecimal device number
<span class="footnote-mark"><a 
href="user_21-514.html#fn14x0"><sup class="textsuperscript">14</sup></a></span><a 
 id="x1-26001f14"></a> or the full path name of
the device, e.g. <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">/dev/hda3</span></span></span>.<span class="footnote-mark"><a 
href="user_21-515.html#fn15x0"><sup class="textsuperscript">15</sup></a></span><a 
 id="x1-26002f15"></a>

</p><!--l. 1175--><p class="noindent" ><span 
class="cmtt-10x-x-109">reserve=</span><span 
class="cmti-10x-x-109">base</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmti-10x-x-109">size</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmmi-10x-x-109">&#x2026;</span> reserves IO port regions. This can be used to prevent device drivers from auto-probing
addresses where other devices are located, which get confused by the probing.
</p><!--l. 1179--><p class="noindent" ><span 
class="cmtt-10x-x-109">ro </span>instructs the kernel to mount the root file system read-only. <span 
class="cmtt-10x-x-109">rw </span>mounts it read-write. If neither <span 
class="cmtt-10x-x-109">ro </span>nor <span 
class="cmtt-10x-x-109">rw</span>
is specified, the setting from the boot image is used.
</p><!--l. 1183--><p class="noindent" ><span 
class="cmtt-10x-x-109">no-hlt </span>avoids executing a <span 
class="cmtt-10x-x-109">HLT </span>instructions whenever the system is idle. <span 
class="cmtt-10x-x-109">HLT </span>normally significantly reduces
power consumption and therefore also heat dissipation of the CPU, but may not work properly with some
clone CPUs. <span 
class="cmtt-10x-x-109">no387 </span>disables using the hardware FPU even if one is present.
</p><!--l. 1189--><p class="noindent" ><span 
class="cmtt-10x-x-109">debug </span>enables more verbose console logging.
</p><!--l. 1191--><p class="noindent" >Recent kernels also accept the options <span 
class="cmtt-10x-x-109">init=</span><span 
class="cmti-10x-x-109">name </span>and <span 
class="cmtt-10x-x-109">noinitrd</span>. <span 
class="cmtt-10x-x-109">init </span>specifies the name of the <span 
class="cmss-10x-x-109">init</span>
program to execute. Therefore, if single mode cannot be entered because <span 
class="cmss-10x-x-109">init </span>is mis-configured, one may still
be able to reach a shell using <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">init=/bin/sh</span></span></span>. <span 
class="cmtt-10x-x-109">noinitrd </span>disables automatic loading of the initial RAM disk.
Instead, its content is then available on <span 
class="cmtt-10x-x-109">/dev/initrd</span>.
</p><!--l. 1198--><p class="noindent" ><span 
class="cmtt-10x-x-109">vga=</span><span 
class="cmti-10x-x-109">mode </span>alters the VGA mode set at startup. The values <span 
class="cmtt-10x-x-109">normal</span>, <span 
class="cmtt-10x-x-109">extended</span>, <span 
class="cmtt-10x-x-109">ask </span>or a decimal number are
recognized. (See also page <span class="pageref"><a 
href="#x1-450004.2.4"><span 
class="tcrm-1095">�</span></a></span>.)
</p><!--l. 1202--><p class="noindent" ><span 
class="cmtt-10x-x-109">kbd=</span><span 
class="cmti-10x-x-109">code</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmmi-10x-x-109">&#x2026;</span> preloads a sequence of keystrokes in the BIOS keyboard buffer. The keystrokes have to be
entered as 16 bit hexadecimal numbers, with the upper byte containing the scan code and the lower byte
containing the ASCII code. Note that most programs only use the ASCII code, so the scan code can
frequently be omitted. Scan code tables can be found in many books on PC hardware. Note that scan codes
depend on the keyboard layout.
</p><!--l. 1210--><p class="noindent" >Finally, <span 
class="cmtt-10x-x-109">lock </span>stores the current command-line as the default command-line, so that LILO&#x00A0;boots the same
image with the same options (including <span 
class="cmtt-10x-x-109">lock</span>) when invoked the next time.
</p>
<h5 class="subsubsectionHead"><span class="titlemark">3.1.2   </span> <a 
 id="x1-270003.1.2"></a>Device-specific options</h5>
<!--l. 1217--><p class="noindent" >There is also a plethora of options to specify certain characteristics (e.g. IO and memory addresses) of
devices. Some common ones are <span 
class="cmtt-10x-x-109">ether</span>, <span 
class="cmtt-10x-x-109">floppy</span>, <span 
class="cmtt-10x-x-109">hd</span>, <span 
class="cmtt-10x-x-109">bmouse</span>, and <span 
class="cmtt-10x-x-109">sound</span>. The usage of these options is
<span 
class="cmti-10x-x-109">option</span><span 
class="cmtt-10x-x-109">=</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmmi-10x-x-109">&#x2026;</span>. Please consult the corresponding FAQs and HOWTOs for details. For an overview of all
available options, consult the file <span 
class="cmtt-10x-x-109">init/main.c </span>in the kernel source tree.
</p><!--l. 1226--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">3.1.3   </span> <a 
 id="x1-280003.1.3"></a>Other options</h5>
<!--l. 1228--><p class="noindent" >Options of the type <span 
class="cmti-10x-x-109">variable</span><span 
class="cmtt-10x-x-109">=</span><span 
class="cmti-10x-x-109">value </span>which are neither standard options nor device-specific options, cause the
respective variables to be set in the environment passed to <span 
class="cmss-10x-x-109">init</span>. The case of the variable name is preserved,
i.e. it isn&#8217;t automatically converted to upper case.
</p><!--l. 1234--><p class="noindent" >Note that environment variables passed to <span 
class="cmss-10x-x-109">init </span>are typically available in system initialization scripts (e.g.
<span 
class="cmtt-10x-x-109">/etc/rc.local</span>), but they&#8217;re not visible from ordinary login sessions, because the <span 
class="cmss-10x-x-109">login </span>program removes
them from the user&#8217;s environment.

</p><!--l. 1240--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">3.1.4   </span> <a 
 id="x1-290003.1.4"></a>Repeating options</h5>
<!--l. 1242--><p class="noindent" >The effect of repeating boot command-line options depends on the
options.<span class="footnote-mark"><a 
href="#fn16x0"><sup class="textsuperscript">16</sup></a></span><a 
 id="x1-29001f16"></a>
There are three possible behaviours:
</p><!--l. 1252--><p class="noindent" >Options that only enable or disable a certain functionality can be repeated any number of times. <span 
class="cmtt-10x-x-109">debug</span>,
<span 
class="cmtt-10x-x-109">lock</span>, <span 
class="cmtt-10x-x-109">no-hlt</span>, and <span 
class="cmtt-10x-x-109">no387 </span>fall into this category.
</p><!--l. 1256--><p class="noindent" >Other options change a global setting whenever they appear, so only the value or presence of the last option
matters. The antagonists <span 
class="cmtt-10x-x-109">ro </span>and <span 
class="cmtt-10x-x-109">rw </span>are such options. Also, <span 
class="cmtt-10x-x-109">ramdisk</span>, <span 
class="cmtt-10x-x-109">root</span>, and <span 
class="cmtt-10x-x-109">vga </span>work this way.
Example: <span 
class="cmtt-10x-x-109">ro rw </span>would mount the root file system read-write.
</p><!--l. 1262--><p class="noindent" >Finally, when <span 
class="cmtt-10x-x-109">reserve </span>and many device-specific options are repeated, each occurrence has its own meaning,
e.g.
</p><!--l. 1265--><p class="noindent" ><span 
class="cmtt-10x-x-109">hd=</span><span 
class="cmmi-10x-x-109">&#x2026;</span> <span 
class="cmtt-10x-x-109">hd=</span><span 
class="cmmi-10x-x-109">&#x2026;</span> would configure two hard disks, and
</p><!--l. 1267--><p class="noindent" ><span 
class="cmtt-10x-x-109">reserve=0x300,8 reserve=0x5f0,16 </span>would reserve the ranges 0x300 to 0x307 and 0x5f0 to 0x5ff (which is
equivalent to writing <span 
class="cmtt-10x-x-109">reserve=0x300,8,0x5f0,16</span>).
</p>
<h5 class="subsubsectionHead"><span class="titlemark">3.1.5   </span> <a 
 id="x1-300003.1.5"></a>Implicit options</h5>
<!--l. 1274--><p class="noindent" >LILO&#x00A0;always passes the string <span 
class="cmtt-10x-x-109">BOOT</span><span 
class="cmtt-10x-x-109">_IMAGE=</span><span 
class="cmti-10x-x-109">name </span>to the kernel, where <span 
class="cmti-10x-x-109">name </span>is the name by which the
kernel is identified (e.g. the label). This variable can be used in <span 
class="cmtt-10x-x-109">/etc/rc </span>to select a different behaviour,
depending on the kernel.
</p><!--l. 1279--><p class="noindent" >When booting automatically, i.e. without human intervention, the word <span 
class="cmtt-10x-x-109">auto </span>is also passed
on the command line. This can be used by <span 
class="cmss-10x-x-109">init </span>to suppress interactive prompts in the boot
phase.
</p><!--l. 1285--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">3.2   </span> <a 
 id="x1-310003.2"></a>Boot image selection</h4>
<!--l. 1288--><p class="noindent" >The details of selecting the boot image are somewhat complicated. The following tables illustrate them.
First, if neither <span 
class="cmtt-10x-x-109">prompt </span>is set nor a shift key is being pressed:
</p><!--l. 1292--><p class="noindent" >

</p>
<center class="math-display" >
<img 
src="user_21-520x.png" alt="                        |
 Externally   Command   | Auto-  Booted  image
  provided     line in  | matic
 cmd. line17   map file18 |boot19
-----No----------No-----|--Yes---Default-image--------------- 17Externally provided command lines could be used to add front- ends to LILO. They would pass the respective 18This command line is set by invoking the map installer with the -R option, by using the boot command -line option
     Yes         &#8212;      |  Yes   Specified by external      command string to LILO, which would then interpret it like keyboard input. This feature is currently not used. lock, or if a fallback command line is set (with fallback).                                    19I.e. the keyword auto is a
                        |
                        |        command   line
     No          Yes    |  Yes   Specified by command   line
                        |        in map file
" class="math-display"  /></center>
<!--l. 1320--><p class="noindent" >If <span 
class="cmtt-10x-x-109">prompt </span>is not set and a shift key is being pressed:
</p>
<center class="math-display" >
<img 
src="user_21-521x.png" alt="                                    |
  Input    Empty   Extern.  Cmd.l.  |Auto-  Booted  image
 timeout   cmd.l.   cmd.l.  in map  |matic
                              file   |boot
----No------No-------&#8212;--------&#8212;-----|-No----Specified-by-the-user-
                                    |
    No      Yes      &#8212;        &#8212;     | No    Default image
   Yes      n/a      &#8212;        &#8212;     | Yes   Default image
" class="math-display"  /></center>
<!--l. 1333--><p class="noindent" >Finally, if the configuration variable <span 
class="cmtt-10x-x-109">prompt </span>is set:
</p>
<center class="math-display" >
<img 
src="user_21-522x.png" alt="   Input    Empty   Extern.   Cmd.l. |Auto -  Booted image
                                    |
  timeout   cmd.l.   cmd.l.  in map  |matic
------------------------------file---|-boot------------------------
    No       No      No       No    | No     Specified by the user
    No      Yes      No       No    | No     Default image
    Yes     n/a      No       No    | Yes    Default image
   n/a      n/a      Yes       &#8212;    | Yes    Specified by external
                                    |        command  line
                                    |
   n/a      n/a      No       Yes   | Yes    Specified by command
                                    |        line in map  file
" class="math-display"  /></center>
<!--l. 1350--><p class="noindent" >Note that LILO&#x00A0;pauses for the amount of time specified in <span 
class="cmtt-10x-x-109">delay </span>when at the end of a default command
line. The automatic boot can then be interrupted by pressing a modifier key ([Shift], [Ctrl],
etc.).
</p><!--l. 1354--><p class="noindent" >The default image is the first image in the map file or the image specified with the <span 
class="cmtt-10x-x-109">default</span>
variable. However, after an unsuccessful boot attempt, the respective image becomes the default
image.
</p><!--l. 1360--><p class="noindent" >

</p>
<h3 class="sectionHead"><span class="titlemark">4   </span> <a 
 id="x1-320004"></a>Map installer</h3>
<!--l. 1363--><p class="noindent" >The map installer program <span 
class="cmtt-10x-x-109">/sbin/lilo </span>updates the boot sector and creates the map file. If the map
installer detects an error, it terminates immediately and does not touch the boot sector and the map
file.
</p><!--l. 1367--><p class="noindent" >Whenever the map installer updates a boot sector, the original boot sector is copied to <br 
class="newline" /><span 
class="cmtt-10x-x-109">/boot/boot.</span><span 
class="cmti-10x-x-109">number </span><br 
class="newline" />where <span 
class="cmti-10x-x-109">number </span>is the hexadecimal device number. If such a file already exists, no backup copy is made.
Similarly, a file <br 
class="newline" /><span 
class="cmtt-10x-x-109">/boot/part.</span><span 
class="cmti-10x-x-109">number </span><br 
class="newline" />is created if LILO&#x00A0;modifies the partition table. (See page <span class="pageref"><a 
href="#x1-430004.2.2"><span 
class="tcrm-1095">�</span></a></span>.)
</p><!--l. 1377--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.1   </span> <a 
 id="x1-330004.1"></a>Command-line options</h4>
<!--l. 1379--><p class="noindent" >The LILO&#x00A0;map installer can be invoked in the following ways:
</p><!--l. 1387--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.1   </span> <a 
 id="x1-340004.1.1"></a>Show current installation</h5>
<!--l. 1390--><p class="noindent" >The currently mapped files are listed. With <span 
class="cmtt-10x-x-109">-v</span>, also many parameters are shown.
</p><!--l. 1393-->
<p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config_file</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">-q</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map_file</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-v</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> <span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1401--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies the configuration file that is used by the map installer (see section <a 
href="#x1-410004.2">4.2<!--tex4ht:ref: config --></a>). If <span 
class="cmtt-10x-x-109">-C </span>is omitted,
     <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>is used.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate map file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-q</span> </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Lists the currently mapped files.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-v</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Increase verbosity. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.</dd></dl>

<!--l. 1415--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.2   </span> <a 
 id="x1-350004.1.2"></a>Create or update map</h5>
<!--l. 1418--><p class="noindent" >A new map is created for the images described in the configuration file <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>and they are
registered in the boot sector.
</p><!--l. 1422-->
<p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo</span> <span class="big"><img 
src="user_21-529x.png" alt="["  class="left" align="middle" /></span> <span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config_file</span>  <span class="big">] [ <span 
class="cmtt-10x-x-109">-b </span><span 
class="cmti-10x-x-109">boot_device</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-c</span> <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-l</span> <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-i </span><span 
class="cmti-10x-x-109">boot_sector</span>  <span class="big">]</span> <br 
class="newline" /><span class="big">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [</span> <span 
class="cmtt-10x-x-109">-f </span><span 
class="cmti-10x-x-109">disk_tab</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map_file</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-d </span><span 
class="cmti-10x-x-109">delay</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-v</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-t</span> <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-s </span><span 
class="cmti-10x-x-109">save_file</span>  <span class="big"> | </span> <br 
class="newline" /><span class="big">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> <span 
class="cmtt-10x-x-109">-S </span><span 
class="cmti-10x-x-109">save</span><span 
class="cmti-10x-x-109">_file</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-P fix</span> <span class="big"> | </span> <span 
class="cmtt-10x-x-109">-P ignore</span> <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-r </span><span 
class="cmti-10x-x-109">root</span><span 
class="cmti-10x-x-109">_dir</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1440--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-b </span><span 
class="cmti-10x-x-109">boot<_device</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies the boot device. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-c</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Enables map compaction. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate configuration file. See also section <a 
href="#x1-340004.1.1">4.1.1<!--tex4ht:ref: invshow --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-d </span><span 
class="cmti-10x-x-109">delay</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Sets the delay before LILO&#x00A0;boots the default image. Note that the delay is specified in <span 
class="cmbx-10x-x-109">tenths</span>
     of a second. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-D </span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies the default image. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-f </span><span 
class="cmti-10x-x-109">disk</span><span 
class="cmti-10x-x-109">_tab</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies a disk parameter table file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-i </span><span 
class="cmti-10x-x-109">boot</span><span 
class="cmti-10x-x-109">_sector</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate boot file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-L</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Enables lba32 sector addresses. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-l</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Enables linear sector addresses. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate map file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-P </span><span 
class="cmti-10x-x-109">mode</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies how invalid partition table entries should be handled. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-r </span><span 
class="cmti-10x-x-109">root</span><span 
class="cmti-10x-x-109">_directory</span> </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Chroots to the specified directory before doing anything else. This is useful when running the
     map installer while the normal root file system is mounted somewhere else, e.g. when recovering
     from an installation failure with a recovery disk. The <span 
class="cmtt-10x-x-109">-r </span>option is implied if the environment
     variable <span 
class="cmtt-10x-x-109">ROOT </span>is set.<span class="footnote-mark"><a 
href="user_21-516.html#fn20x0"><sup class="textsuperscript">20</sup></a></span><a 
 id="x1-35001f20"></a>
     The current directory is changed to the new root directory, so using relative paths may not
     work.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-s </span><span 
class="cmti-10x-x-109">save</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate boot sector save file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-S </span><span 
class="cmti-10x-x-109">save</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Like <span 
class="cmtt-10x-x-109">-s</span>, but overwrites old save files.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-t</span> </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Test only. This performs the entire installation procedure except replacing the map file, writing
     the modified boot sector and fixing partition tables. This can be used in conjunction with the
     <span 
class="cmtt-10x-x-109">-v </span>option to verify that LILO&#x00A0;will use sane values.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-v</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Increase verbosity. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.</dd></dl>
<!--l. 1489--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.3   </span> <a 
 id="x1-360004.1.3"></a>Change default command line</h5>
<!--l. 1492--><p class="noindent" >Changes LILO&#8217;s default command line. See also section <a 
href="#x1-310003.2">3.2<!--tex4ht:ref: bootsel --></a>.
</p><!--l. 1494-->
<p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map</span><span 
class="cmti-10x-x-109">_file</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">-R</span> <span class="big">[</span> <span 
class="cmti-10x-x-109">word</span>  <span 
class="cmmi-10x-x-109">&#x2026;</span> <span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1501--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate configuration file. See also section <a 
href="#x1-340004.1.1">4.1.1<!--tex4ht:ref: invshow --></a>.

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-m </span><span 
class="cmti-10x-x-109">map</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate map file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-R </span><span 
class="cmti-10x-x-109">word</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Stores the specified words in the map file. The boot loader uses those words as the default
     command line when booting the next time. That command line is removed from the map file by
     the boot loader by overwriting the sector immediately after reading it. The first word has to be
     the name of a boot image. If <span 
class="cmtt-10x-x-109">-R </span>is not followed by any words, the current default command line in
     the map file is erased.<span class="footnote-mark"><a 
href="user_21-517.html#fn21x0"><sup class="textsuperscript">21</sup></a></span><a 
 id="x1-36001f21"></a>
     If the command line isn&#8217;t valid, the map installer issues an error message and returns a non-zero
     exit code.</dd></dl>
<!--l. 1523--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.4   </span> <a 
 id="x1-370004.1.4"></a>Kernel name translation</h5>
<!--l. 1525--><p class="noindent" >Determines the path of the kernel.
</p><!--l. 1527--><p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config_file</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">-I </span><span 
class="cmti-10x-x-109">name</span>  <span class="big">[</span> <span 
class="cmti-10x-x-109">options</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1534--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate configuration file. See also section <a 
href="#x1-340004.1.1">4.1.1<!--tex4ht:ref: invshow --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-I </span><span 
class="cmti-10x-x-109">name  </span>[  <span 
class="cmti-10x-x-109">options  </span>] </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Translates the specified label name to the path of the corresponding kernel image and prints that
     path on standard output. This can be used to synchronize files that depend on the kernel (e.g.
     the <span 
class="cmss-10x-x-109">ps </span>database). The image name can be obtained from the environment variable <span 
class="cmtt-10x-x-109">BOOT</span><span 
class="cmtt-10x-x-109">_IMAGE</span>.
     An error message is issued and a non-zero exit code is returned if no matching label name can
     be found. The existence of the image file is verified if the option character <span 
class="cmtt-10x-x-109">v </span>is added.</dd></dl>
<!--l. 1549--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.5   </span> <a 
 id="x1-380004.1.5"></a>De-installation</h5>
<!--l. 1551--><p class="noindent" >Restores the boot sector that was used before the installation of LILO. Note that this option only works
properly if LILO&#8217;s directories (e.g. <span 
class="cmtt-10x-x-109">/boot</span>) have not been touched since the first installation. See also section

<a 
href="#x1-720005.3">5.3<!--tex4ht:ref: deinst --></a>.
</p><!--l. 1556--><p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config_file</span>  <span class="big">] [</span> <span 
class="cmtt-10x-x-109">-s </span><span 
class="cmti-10x-x-109">save_file</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">-u</span> <span class="big"> | </span> <span 
class="cmtt-10x-x-109">-U</span> <span class="big">[</span> <span 
class="cmti-10x-x-109">boot_device</span>  <span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1564--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-C </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate configuration file. See also section <a 
href="#x1-340004.1.1">4.1.1<!--tex4ht:ref: invshow --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-s </span><span 
class="cmti-10x-x-109">save</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies an alternate boot sector save file. See also sections <a 
href="#x1-400004.1.7">4.1.7<!--tex4ht:ref: corropt --></a> and <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-u </span>[  <span 
class="cmti-10x-x-109">device_name  </span>] </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Restores the backup copy of the specified boot sector. If no device is specified, the value of the
     <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">boot</span></span></span> variable is used. If this one is also unavailable, LILO&#x00A0;uses the current root device. The
     name of the backup copy is derived from the device name. The <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">-s</span></span></span> option or the <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">backup</span></span></span> variable
     can be used to override this. LILO&#x00A0;validates the backup copy by checking a time stamp.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">-U </span>[  <span 
class="cmti-10x-x-109">device_name  </span>] </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Like <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">-u</span></span></span>, but does not check the time stamp.</dd></dl>
<!--l. 1581--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.6   </span> <a 
 id="x1-390004.1.6"></a>Print version number</h5>
    <!--l. 1583--><p class="indent" ><span 
class="cmtt-10x-x-109">/sbin/lilo -V </span><span 
class="cmtt-10x-x-109">&#x00A0;</span>
</p><!--l. 1587--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-V</span> </dt><dd 
class="description">&#x00A0; <br 
class="newline" />Print the version number and exit.</dd></dl>
<!--l. 1593--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.1.7   </span> <a 
 id="x1-400004.1.7"></a>Options corresponding to configuration variables</h5>
<!--l. 1596--><p class="noindent" >There are also many command-line options that correspond to configuration variables. See section <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a> for
a description.
</p><!--l. 1599--><p class="noindent" >

</p>
<center class="math-display" >
<img 
src="user_21-574x.png" alt="                      |
-Command----line option|Con-figuration-variable-----
 -b  bootxdevice       |boot=bootxdevice
 -c                   |compact
 -d  tsecs             |delay=tsecs
                      |
 -D  name             |default=name
 -i  bootxsector        |install=bootxsector
 -L                   |lba32
 -l                   |linear
 -m  mapxfile          |map=mapx  file
 -P  fix              |fix -table
 -P  ignore           |ignore -table
                      |
 -s  backupx file        |backup=backupx file
 -S  backupx file        |force -backup=backupx file
 -v  ...               |verbose=level
" class="math-display"  /></center>
<!--l. 1620--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.2   </span> <a 
 id="x1-410004.2"></a>Configuration</h4>
<!--l. 1623--><p class="noindent" >The configuration information is stored in the file <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>and consists of variable
assignments.
</p><!--l. 1627--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.2.1   </span> <a 
 id="x1-420004.2.1"></a>Syntax</h5>
<!--l. 1630--><p class="noindent" >The following syntax rules apply:
</p>
     <ul class="itemize1">
     <li class="itemize">flag variables consist of a single word and are followed by whitespace or the end of the file.
     </li>
     <li class="itemize">string  variables  consist  of  the  variable  name,  optional  whitespace,  an  equal  sign,  optional
     whitespace, the value and required whitespace, or the end of the file.

     </li>
     <li class="itemize">a non-empty sequence of blanks, tabs, newlines and comments counts as whitespace.
     </li>
     <li class="itemize">variable  names  are  case-insensitive.  Values  are  usually  case-sensitive,  but  there  are  a  few
     exceptions. (See below.)
     </li>
     <li class="itemize">tabs and newlines are special characters and may not be part of a variable name or a value.
     The use of other control characters and non-ASCII characters is discouraged.
     </li>
     <li class="itemize">blanks and equal signs may only be part of a variable name or a value if they are escaped by
     a backslash or if the value is embedded in double quotes. An equal sign may not be the only
     character in a name or value.
     </li>
     <li class="itemize">an escaped tab is converted to an escaped blank. An escaped newline is removed from the input
     stream. An escaped backslash (i.e. two backslashes) is converted to a backslash. Inside quoted
     strings, only double quotes, backslashes, dollar signs, and newlines can be escaped.
     </li>
     <li class="itemize">quoted  strings  can  be  continued  over  several  lines  by  ending  each  incomplete  line  with  a
     backslash. A single space is inserted in the string for the line end and all spaces or tabs that
     follow immediately on the next line.
     </li>
     <li class="itemize">environment variables can be used by specifying them in the form <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">$</span></span></span><span 
class="cmti-10x-x-109">name </span>or <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">${</span></span></span><span 
class="cmti-10x-x-109">name</span><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">}</span></span></span>. Dollar
     signs can be escaped.
     </li>
     <li class="itemize">comments begin with a number sign and end with the next newline. All characters (including
     backslashes) until the newline are ignored.</li></ul>
<!--l. 1664--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-6">
boot&#x00A0;=&#x00A0;$FD
&#x00A0;<br />install&#x00A0;=&#x00A0;$MNT/boot.b
&#x00A0;<br />map&#x00A0;=&#x00A0;$MNT/map
&#x00A0;<br />compact
&#x00A0;<br />read-only
&#x00A0;<br />append&#x00A0;=&#x00A0;"nfsroot=/home/linux-install/root&#x00A0;\
&#x00A0;<br />&#x00A0;&#x00A0;nfsaddrs=128.178.156.28:128.178.156.24::255.255.255.0:lrcinst"
&#x00A0;<br />image&#x00A0;=&#x00A0;$MNT/zImage</div>
<!--l. 1674--><p class="nopar" >
</p><!--l. 1677--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.2.2   </span> <a 
 id="x1-430004.2.2"></a>Global options</h5>
<!--l. 1680--><p class="noindent" ><span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>begins with a possibly empty global options section. Many global options can also be
set from the command line, but storing permanent options in the configuration file is more
convenient.
</p><!--l. 1684--><p class="noindent" >The following global options are recognized:
</p><!--l. 1686--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">backup=</span><span 
class="cmti-10x-x-109">backup</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">Copy the original boot sector to <span 
class="cmti-10x-x-109">backup</span><span 
class="cmti-10x-x-109">_file </span>(which may also be a device, e.g.
     <span 
class="cmtt-10x-x-109">/dev/null</span>) instead of <span 
class="cmtt-10x-x-109">/boot/boot.</span><span 
class="cmti-10x-x-109">number</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">boot=</span><span 
class="cmti-10x-x-109">boot</span><span 
class="cmti-10x-x-109">_device</span> </dt><dd 
class="description">Sets the name of the device (e.g. a hard disk partition) that contains the boot
     sector. If <span 
class="cmtt-10x-x-109">boot </span>is omitted, the boot sector is read from (and possibly written to) the device that
     is currently mounted as root.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">change-rules</span> </dt><dd 
class="description">Defines partition type numbers. See section <a 
href="#x1-550004.5.2">4.5.2<!--tex4ht:ref: ptcr --></a> for details.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">compact</span> </dt><dd 
class="description">Tries to merge read requests for adjacent sectors into a single read request. This drastically
     reduces load time and keeps the map smaller. Using <span 
class="cmtt-10x-x-109">compact </span>is especially recommended when
     booting from a floppy disk. <span 
class="cmtt-10x-x-109">compact </span>may conflict with <span 
class="cmtt-10x-x-109">linear </span>or <span 
class="cmtt-10x-x-109">lba32</span>, see section <a 
href="#x1-810006.3">6.3<!--tex4ht:ref: othpro --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">default=</span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">Uses the specified image as the default boot image. If <span 
class="cmtt-10x-x-109">default </span>is omitted, the image
     appearing first in the configuration file is used.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">delay=</span><span 
class="cmti-10x-x-109">tsecs</span> </dt><dd 
class="description">Specifies the number of <span 
class="cmbx-10x-x-109">tenths </span>of a second LILO&#x00A0;should wait before booting the first

     image. This is useful on systems that immediately boot from the hard disk after enabling the
     keyboard. LILO&#x00A0;doesn&#8217;t wait if <span 
class="cmtt-10x-x-109">delay </span>is omitted or if <span 
class="cmtt-10x-x-109">delay </span>is set to zero.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">disk=</span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name</span> </dt><dd 
class="description">Defines non-standard parameters for the specified disk. See section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a> for details.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">fix-table</span> </dt><dd 
class="description">Allows LILO&#x00A0;to adjust 3D addresses in partition tables. Each partition entry contains
     a 3D (sector/head/cylinder) and a linear 32-bit address of the first and the last sector of
     the partition. If a partition is not track-aligned and if certain other operating systems (e.g.
     PC/MS-DOS or OS/2) are using the same disk, they may change the 3D address. LILO&#x00A0;can
     store its boot sector only on partitions where both address types correspond. LILO&#x00A0;re-adjusts
     incorrect 3D start addresses if <span 
class="cmtt-10x-x-109">fix-table </span>is set.
     <!--l. 1724--><p class="noindent" ><span 
class="cmbx-10x-x-109">WARNING: </span>This does not guarantee that other operating systems may not attempt to reset
     the address later. It is also possible that this change has other, unexpected side-effects. The
     correct fix is to re-partition the drive with a program that does align partitions to tracks. Also,
     with some disks (e.g. some large EIDE disks with address translation enabled), under some
     circumstances, it may even be unavoidable to have conflicting partition table entries.
     </p></dd><dt class="description">
<span 
class="cmtt-10x-x-109">force-backup=</span><span 
class="cmti-10x-x-109">backup</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">Like <span 
class="cmtt-10x-x-109">backup</span>, but overwrite an old backup copy if it exists. <br 
class="newline" /><span 
class="cmtt-10x-x-109">backup=</span><span 
class="cmti-10x-x-109">backup</span><span 
class="cmti-10x-x-109">_file </span>is ignored if <span 
class="cmtt-10x-x-109">force-backup </span>appears in the same configuration file.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">ignore-table</span> </dt><dd 
class="description">Tells LILO to ignore corrupt partition tables and to put the boot sector even on
     partitions that appear to be unsuitable for that.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">install=</span><span 
class="cmti-10x-x-109">boot</span><span 
class="cmti-10x-x-109">_sector</span> </dt><dd 
class="description">Install the specified file as the new boot sector. If <span 
class="cmtt-10x-x-109">install </span>is omitted, <br 
class="newline" /><span 
class="cmtt-10x-x-109">/boot/boot.b </span>is used as the default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">keytable=</span><span 
class="cmti-10x-x-109">table</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">Re-map the keyboard as specified in this file. See section <a 
href="#x1-570004.6">4.6<!--tex4ht:ref: keytab --></a> for details.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lba32</span> </dt><dd 
class="description">Generate 32-bit Logical Block Addresses instead of sector/head/cylinder addresses. If the
     BIOS supports packet addressing, then packet calls will be used to access the disk. This allows
     booting from any partition on disks with more than 1024 cylinders. If the BIOS does not
     support packet addressing, then <span 
class="cmtt-10x-x-109">lba32 </span>addresses are translated to C:H:S, just as for <span 
class="cmtt-10x-x-109">linear</span>.
     All floppy disk references are retained in C:H:S form. Use of <span 
class="cmtt-10x-x-109">lba32 </span>is recommended on all
     post-1998 systems. <span 
class="cmtt-10x-x-109">lba32 </span>may conflict with <span 
class="cmtt-10x-x-109">compact</span>, see section <a 
href="#x1-810006.3">6.3<!--tex4ht:ref: othpro --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">linear</span> </dt><dd 
class="description">Generate linear sector addresses instead of sector/head/cylinder addresses. Linear addresses
     are translated at run time and do not depend on disk geometry. Note that boot disks may
     not be portable if <span 
class="cmtt-10x-x-109">linear </span>is used, because the BIOS service to determine the disk geometry
     does not work reliably for floppy disks. When using <span 
class="cmtt-10x-x-109">linear </span>with large disks, <span 
class="cmtt-10x-x-109">/sbin/lilo </span>may
     generate references to inaccessible disk areas (see section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a>), because 3D sector addresses
     are not known before boot time. <span 
class="cmtt-10x-x-109">linear </span>may conflict with <span 
class="cmtt-10x-x-109">compact</span>, see section <a 
href="#x1-810006.3">6.3<!--tex4ht:ref: othpro --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">map=</span><span 
class="cmti-10x-x-109">map</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">Specifies the location of the map file. If <span 
class="cmtt-10x-x-109">map </span>is omitted, a file <span 
class="cmtt-10x-x-109">/boot/map </span>is used.
     </dd><dt class="description">

<span 
class="cmtt-10x-x-109">message=</span><span 
class="cmti-10x-x-109">message</span><span 
class="cmti-10x-x-109">_file</span> </dt><dd 
class="description">Specifies a file containing a message that is displayed before the boot prompt.
     No message is displayed while waiting for a modifier key ([Shift], etc.) after printing &#8220;LILO &#8221;.
     In the message, the <span 
class="cmtt-10x-x-109">FF </span>character ([Ctrl L]) clears the local screen. The size of the message file
     is limited to 65535 bytes. The map file has to be rebuilt if the message file is changed or moved.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">nowarn</span> </dt><dd 
class="description">Disables warnings about possible future dangers.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">prompt</span> </dt><dd 
class="description">Forces  entering  the  boot  prompt  without  expecting  any  prior  key-presses.  Unattended
     reboots are impossible if <span 
class="cmtt-10x-x-109">prompt </span>is set and <span 
class="cmtt-10x-x-109">timeout </span>isn&#8217;t.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">serial=</span><span 
class="cmti-10x-x-109">parameters</span> </dt><dd 
class="description">Enables control from a serial line. The specified serial port is initialized and LILO&#x00A0;is
     accepting input from it and from the PC&#8217;s keyboard. Sending a break on the serial line corresponds
     to pressing a shift key on the console in order to get LILO&#8217;s attention. All boot images
     should be password-protected if the serial access is less secure than access to the console,
     e.g. if the line is connected to a modem. The parameter string has the following syntax:
     <br 
class="newline" /><span 
class="cmti-10x-x-109">port</span><span 
class="cmtt-10x-x-109">,</span><span 
class="cmti-10x-x-109">bps parity bits </span><br 
class="newline" />The components <span 
class="cmti-10x-x-109">bps</span>, <span 
class="cmti-10x-x-109">parity </span>and <span 
class="cmti-10x-x-109">bits </span>can be omitted. If a component is omitted, all following
     components have to be omitted too. Additionally, the comma has to be omitted if only the port
     number is specified.
          <dl class="description"><dt class="description">
     <span 
class="cmti-10x-x-109">port</span> </dt><dd 
class="description">the number of the serial port, zero-based. 0 corresponds to <span 
class="cmtt-10x-x-109">COM1 </span>alias <span 
class="cmtt-10x-x-109">/dev/ttyS0</span>, etc.
          All four ports can be used (if present).
          </dd><dt class="description">
     <span 
class="cmti-10x-x-109">bps</span> </dt><dd 
class="description">the baud rate of the serial port. The following baud rates are supported: 110, 300, 1200,
          2400, 4800, 9600, 19200, and 38400 bps. Default is 2400 bps.
          </dd><dt class="description">
     <span 
class="cmti-10x-x-109">parity</span> </dt><dd 
class="description">the parity used on the serial line. LILO&#x00A0;ignores input parity and strips the 8th bit. The
          following (upper or lower case) characters are used to describe the parity: <span 
class="cmtt-10x-x-109">n </span>for no parity,
          <span 
class="cmtt-10x-x-109">e </span>for even parity and <span 
class="cmtt-10x-x-109">o </span>for odd parity.
          </dd><dt class="description">
     <span 
class="cmti-10x-x-109">bits</span> </dt><dd 
class="description">the number of bits in a character. Only 7 and 8 bits are supported. Default is 8 if parity
          is &#8220;none&#8221;, 7 if parity is &#8220;even&#8221; or &#8220;odd&#8221;.</dd></dl>
     <!--l. 1803--><p class="noindent" >If <span 
class="cmtt-10x-x-109">serial </span>is set, the value of <span 
class="cmtt-10x-x-109">delay </span>is automatically raised to 20.
     </p><!--l. 1806--><p class="noindent" >Example: <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">serial=0,2400n8</span></span></span> initializes <span 
class="cmtt-10x-x-109">COM1 </span>with the default parameters.
     </p></dd><dt class="description">
<span 
class="cmtt-10x-x-109">timeout=</span><span 
class="cmti-10x-x-109">tsecs</span> </dt><dd 
class="description">Sets a timeout (in tenths of a second) for keyboard input. If no key is pressed for the
     specified time, the first image is automatically booted. Similarly, password input is aborted if the user
     is idle for too long. The default timeout is infinite.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">verbose=</span><span 
class="cmti-10x-x-109">level</span> </dt><dd 
class="description">Turns on lots of progress reporting. Higher numbers give more verbose output. If <span 
class="cmtt-10x-x-109">-v </span>is
     additionally specified on the command line, <span 
class="cmti-10x-x-109">level </span>is increased accordingly. The following verbosity
     levels exist:

          <dl class="description"><dt class="description">
     <span 
class="cmmi-10x-x-109">&#x003C;</span><span 
class="cmbx-10x-x-109">0</span> </dt><dd 
class="description">only warnings and errors are shown
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">0</span> </dt><dd 
class="description">prints one line for each added or skipped image
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">1</span> </dt><dd 
class="description">mentions names of important files and devices and why they are accessed. Also displays
          informational messages for exceptional but harmless conditions and prints the version
          number.
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">2</span> </dt><dd 
class="description">displays statistics and processing of temporary files and devices
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">3</span> </dt><dd 
class="description">displays disk geometry information and partition table change rules
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">4</span> </dt><dd 
class="description">lists sector mappings as they are written into the map file (i.e. after compaction, in a format
          suitable to pass it to the BIOS)
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">5</span> </dt><dd 
class="description">lists the mapping of each sector (i.e. before compaction, raw)</dd></dl>
     <!--l. 1830--><p class="noindent" >When using the <span 
class="cmtt-10x-x-109">-q </span>option, the levels have a slightly different meaning:
          </p><dl class="description"><dt class="description">
     <span 
class="cmbx-10x-x-109">0</span> </dt><dd 
class="description">displays only image names
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">1</span> </dt><dd 
class="description">also displays all global and per-image settings
          </dd><dt class="description">
     <span 
class="cmbx-10x-x-109">2</span> </dt><dd 
class="description">displays the address of the first map sector</dd></dl>
     </dd></dl>
<!--l. 1839--><p class="noindent" >Additionally, the kernel configuration parameters <span 
class="cmtt-10x-x-109">append</span>, <span 
class="cmtt-10x-x-109">initrd</span>, <span 
class="cmtt-10x-x-109">ramdisk</span>, <span 
class="cmtt-10x-x-109">read-only</span>, <span 
class="cmtt-10x-x-109">read-write</span>, <span 
class="cmtt-10x-x-109">root</span>
and <span 
class="cmtt-10x-x-109">vga</span>, and the general per-image options <span 
class="cmtt-10x-x-109">fallback</span>, <span 
class="cmtt-10x-x-109">lock</span>, <span 
class="cmtt-10x-x-109">optional</span>, <span 
class="cmtt-10x-x-109">password</span>, <span 
class="cmtt-10x-x-109">restricted</span>, and
<span 
class="cmtt-10x-x-109">single-key </span>can be set in the global options section. They are used as defaults if they aren&#8217;t specified in the
configuration sections of the respective images. See below for a description.
</p><!--l. 1848--><p class="noindent" >The plethora of options may be intimidating at first, but in &#8220;normal&#8221; configurations, hardly any options but
<span 
class="cmtt-10x-x-109">boot</span>, <span 
class="cmtt-10x-x-109">compact</span>, <span 
class="cmtt-10x-x-109">delay</span>, <span 
class="cmtt-10x-x-109">root</span>, and <span 
class="cmtt-10x-x-109">vga </span>are used.
</p><!--l. 1853--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.2.3   </span> <a 
 id="x1-440004.2.3"></a>General per-image options</h5>
<!--l. 1856--><p class="noindent" >The following options can be specified for all images, independent of their type:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">alias=</span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">Specifies a second name for the current entry.

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">fallback=</span><span 
class="cmti-10x-x-109">command</span><span 
class="cmti-10x-x-109">_line</span> </dt><dd 
class="description">Specifies a string that is stored as the default command line if the current
     image is booted. This is useful when experimenting with kernels which may crash before allowing
     interaction with the system. If using the <span 
class="cmtt-10x-x-109">fallback </span>option, the next reboot (e.g. triggered
     by a manual reset or by a watchdog timer) will load a different (supposedly stable) kernel.
     The command line by the fallback mechanism is cleared by removing or changing the default
     command line with the <span 
class="cmtt-10x-x-109">-R </span>option, see <a 
href="#x1-360004.1.3">4.1.3<!--tex4ht:ref: invcmd --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">label=</span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">By default, LILO&#x00A0;uses the main file name (without its path) of each image specification
     to identify that image. A different name can be used by setting the variable <span 
class="cmtt-10x-x-109">label</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lock</span> </dt><dd 
class="description">Enables automatic recording of boot command lines as the defaults for the following boots.
     This way, LILO&#x00A0;&#8220;locks&#8221; on a choice until it is manually overridden.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">optional</span> </dt><dd 
class="description">Omit this image if its main file is not available at map creation time. This is useful to
     specify test kernels that are not always present.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">password=</span><span 
class="cmti-10x-x-109">password</span> </dt><dd 
class="description">Ask  the  user  for  a  password  when  trying  to  load  this  image.  Because  the
     configuration file contains unencrypted passwords when using this option, it should only be
     readable for the super-user. Passwords are always case-sensitive.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">restricted</span> </dt><dd 
class="description">Relaxes the password protection by requiring a password only if parameters are specified
     on the command line (e.g. <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">single</span></span></span>). <span 
class="cmtt-10x-x-109">restricted </span>can only be used together with <span 
class="cmtt-10x-x-109">password</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">single-key</span> </dt><dd 
class="description">Enables booting the image by hitting a single key, without the need to press [Enter]
     afterwards. <span 
class="cmtt-10x-x-109">single-key </span>requires that either the image&#8217;s label or its alias (or both) is a single
     character. Furthermore, no other image label or alias may start with that character, e.g. an
     entry specifying a label <span 
class="cmtt-10x-x-109">linux </span>and an alias <span 
class="cmtt-10x-x-109">l </span>is not allowed with <span 
class="cmtt-10x-x-109">single-key</span>. Note that you
     can&#8217;t specify command-line parameters for an entry for which only <span 
class="cmtt-10x-x-109">single-key</span>ed names exist.</dd></dl>
<!--l. 1898--><p class="noindent" >All general per-image options, with the exception of <span 
class="cmtt-10x-x-109">label </span>and <span 
class="cmtt-10x-x-109">alias</span>, can also be set in the global options
section as defaults for all images.
</p><!--l. 1902--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-7">
password&#x00A0;=&#x00A0;Geheim
&#x00A0;<br />single-key
&#x00A0;<br />image&#x00A0;=&#x00A0;/vmlinuz
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;linux
&#x00A0;<br />&#x00A0;&#x00A0;alias&#x00A0;=&#x00A0;1
&#x00A0;<br />&#x00A0;&#x00A0;restricted
&#x00A0;<br />other&#x00A0;=&#x00A0;/dev/hda1
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;dos
&#x00A0;<br />&#x00A0;&#x00A0;alias&#x00A0;=&#x00A0;2</div>
<!--l. 1913--><p class="nopar" >
</p><!--l. 1916--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.2.4   </span> <a 
 id="x1-450004.2.4"></a>Per-image options for kernels</h5>
<!--l. 1919--><p class="noindent" >Each (kernel or non-kernel) image description begins with a special variable (see section <a 
href="#x1-460004.3">4.3<!--tex4ht:ref: bootimg --></a>) which is
followed by optional variables. The following variables can be used for all image descriptions that describe a
Linux kernel:
</p><!--l. 1926--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">append=</span><span 
class="cmti-10x-x-109">string</span> </dt><dd 
class="description">Appends the options specified in <span 
class="cmti-10x-x-109">string </span>to the parameter line passed to the kernel.
     This is typically used to specify parameters of hardware that can&#8217;t be entirely auto-detected,
     e.g.<br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">append</span><span 
class="cmtt-10x-x-109">&#x00A0;=</span><span 
class="cmtt-10x-x-109">&#x00A0;"aha152x=0x140,11"</span></span></span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">initrd=</span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">Specifies the file that will be loaded at boot time as the initial RAM disk.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">literal=</span><span 
class="cmti-10x-x-109">string</span> </dt><dd 
class="description">like <span 
class="cmtt-10x-x-109">append</span>, but removes all other options (e.g. setting of the root device). Because
     vital options can be removed unintentionally with <span 
class="cmtt-10x-x-109">literal</span>, this option cannot be set in the
     global options section.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">ramdisk=</span><span 
class="cmti-10x-x-109">size</span> </dt><dd 
class="description">Specifies the size of the optional RAM disk. A value of zero indicates that no RAM
     disk should be created. If this variable is omitted, the RAM disk size configured into the boot
     image is used.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">read-only</span> </dt><dd 
class="description">Specifies that the root file system should be mounted read-only. Typically, the system
     startup procedure re-mounts the root file system read-write later (e.g. after fsck&#8217;ing it).

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">read-write</span> </dt><dd 
class="description">specifies that the root file system should be mounted read-write.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">root=</span><span 
class="cmti-10x-x-109">root</span><span 
class="cmti-10x-x-109">_device</span> </dt><dd 
class="description">Specifies the device that should be mounted as root. If the special name <span 
class="cmtt-10x-x-109">current</span>
     is used, the root device is set to the device on which the root file system is currently mounted.
     If the root has been changed with <span 
class="cmtt-10x-x-109">-r</span>, the respective device is used. If the variable <span 
class="cmtt-10x-x-109">root </span>is
     omitted, the root device setting contained in the kernel image is used. It can be changed with
     the <span 
class="cmss-10x-x-109">rdev </span>program.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">vga=</span><span 
class="cmti-10x-x-109">mode</span> </dt><dd 
class="description"> Specifies the VGA text mode that should be selected when booting. The following values are
     recognized (case is ignored):
          <dl class="description"><dt class="description">
     <span 
class="cmtt-10x-x-109">normal</span> </dt><dd 
class="description">select normal 80x25 text mode.
          </dd><dt class="description">
     <span 
class="cmtt-10x-x-109">extended</span> </dt><dd 
class="description">select 80x50 text mode. The word <span 
class="cmtt-10x-x-109">extended </span>can be abbreviated to <span 
class="cmtt-10x-x-109">ext</span>.
          </dd><dt class="description">
     <span 
class="cmtt-10x-x-109">ask</span> </dt><dd 
class="description">stop and ask for user input (at boot time).
          </dd><dt class="description">
     <span 
class="cmti-10x-x-109">number</span> </dt><dd 
class="description">use the corresponding text mode. A list of available modes can be obtained by booting
          with <span 
class="cmtt-10x-x-109">vga=ask </span>and pressing [Enter].</dd></dl>
     <!--l. 1966--><p class="noindent" >If this variable is omitted, the VGA mode setting contained in the kernel image is used. <span 
class="cmss-10x-x-109">rdev </span>supports
     manipulation of the VGA text mode setting in the kernel image.</p></dd></dl>
<!--l. 1971--><p class="noindent" >All kernel per-image options but <span 
class="cmtt-10x-x-109">literal </span>can also be set in the global options section as defaults for all
kernels.
</p><!--l. 1974--><p class="noindent" >If one of <span 
class="cmtt-10x-x-109">ramdisk</span>, <span 
class="cmtt-10x-x-109">read-only</span>, <span 
class="cmtt-10x-x-109">read-write</span>, <span 
class="cmtt-10x-x-109">root</span>, or <span 
class="cmtt-10x-x-109">vga </span>is omitted in the configuration file and
the corresponding value in the kernel image is changed, LILO&#x00A0;or the kernel will use the new
value.
</p><!--l. 1979--><p class="noindent" >It is perfectly valid to use different settings for the same image, because LILO&#x00A0;stores them in the image
descriptors and not in the images themselves.
</p><!--l. 1983--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-8">
image&#x00A0;=&#x00A0;/vmlinuz
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;lin-hd
&#x00A0;<br />&#x00A0;&#x00A0;root&#x00A0;=&#x00A0;/dev/hda2
&#x00A0;<br />image&#x00A0;=&#x00A0;/vmlinuz
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;lin-fd
&#x00A0;<br />&#x00A0;&#x00A0;root&#x00A0;=&#x00A0;/dev/fd0</div>
<!--l. 1991--><p class="nopar" >
</p><!--l. 1994--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.3   </span> <a 
 id="x1-460004.3"></a>Boot image types</h4>
<!--l. 1997--><p class="noindent" >LILO&#x00A0;can boot the following types of images: </p>
     <ul class="itemize1">
     <li class="itemize">kernel images from a file.
     </li>
     <li class="itemize">kernel images from a block device. (E.g. a floppy disk.)
     </li>
     <li class="itemize">the boot sector of some other operating system.</li></ul>
<!--l. 2004--><p class="noindent" >The image type is determined by the name of the initial variable of the configuration section.
</p><!--l. 2007--><p class="noindent" >The image files can reside on any media that is accessible at boot time. There&#8217;s no need to put them on the
root device, although this certainly doesn&#8217;t hurt.
</p><!--l. 2012--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.3.1   </span> <a 
 id="x1-470004.3.1"></a>Booting kernel images from a file</h5>
<!--l. 2014--><p class="noindent" >The image is specified as follows: <span 
class="cmtt-10x-x-109">image=</span><span 
class="cmti-10x-x-109">name</span>
</p><!--l. 2016--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-9">
image&#x00A0;=&#x00A0;/linux</div>
<!--l. 2019--><p class="nopar" >
</p><!--l. 2021--><p class="noindent" >See sections <a 
href="#x1-440004.2.3">4.2.3<!--tex4ht:ref: cfggen --></a> and <a 
href="#x1-450004.2.4">4.2.4<!--tex4ht:ref: cfgkern --></a> for the options that can be added in a kernel image section.
</p><!--l. 2025--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.3.2   </span> <a 
 id="x1-480004.3.2"></a>Booting kernel images from a device</h5>
<!--l. 2027--><p class="noindent" >The range of sectors that should be mapped has to be specified. Either a range (<span 
class="cmti-10x-x-109">start</span><span 
class="cmtt-10x-x-109">-</span><span 
class="cmti-10x-x-109">end</span>) or a start and a
distance (<span 
class="cmti-10x-x-109">start</span><span 
class="cmtt-10x-x-109">+</span><span 
class="cmti-10x-x-109">number</span>) have to be specified. <span 
class="cmti-10x-x-109">start </span>and <span 
class="cmti-10x-x-109">end </span>are zero-based. If only the start is specified,
only that sector is mapped.
</p><!--l. 2034--><p class="noindent" >The image is specified as follows: <span 
class="cmtt-10x-x-109">image=</span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name   </span>Additionally, the <span 
class="cmtt-10x-x-109">range </span>variable must be
set.
</p><!--l. 2037--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-10">
image&#x00A0;=&#x00A0;/dev/fd0
&#x00A0;<br />&#x00A0;&#x00A0;range&#x00A0;=&#x00A0;1+512</div>
<!--l. 2041--><p class="nopar" >
</p><!--l. 2043--><p class="noindent" >All kernel options can also be used when booting the kernel from a device.
</p><!--l. 2046--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.3.3   </span> <a 
 id="x1-490004.3.3"></a>Booting a foreign operating system</h5>
<!--l. 2049--><p class="noindent" >LILO&#x00A0;can even boot other operating systems, i.e. MS-DOS. To boot an other operating system, the name of
a loader program, the device or file that contains the boot sector and the device that contains the partition
table have to be specified.
</p><!--l. 2055--><p class="noindent" >The boot sector is merged with the partition table and stored in the map file.
</p><!--l. 2057--><p class="noindent" >Currently, the loaders <span 
class="cmtt-10x-x-109">chain.b </span>and <span 
class="cmtt-10x-x-109">os2</span><span 
class="cmtt-10x-x-109">_d.b </span>exist. <span 
class="cmtt-10x-x-109">chain.b </span>simply starts the specified boot
sector.<span class="footnote-mark"><a 
href="user_21-518.html#fn22x0"><sup class="textsuperscript">22</sup></a></span><a 
 id="x1-49001f22"></a>
<span 
class="cmtt-10x-x-109">os2</span><span 
class="cmtt-10x-x-109">_d.b </span>it a variant of <span 
class="cmtt-10x-x-109">chain.b </span>that can boot OS/2 from the second hard disk. The <span 
class="cmtt-10x-x-109">map-drive </span>option has
to be used with <span 
class="cmtt-10x-x-109">os2</span><span 
class="cmtt-10x-x-109">_d.b </span>to actually swap the drives.
</p><!--l. 2065--><p class="noindent" >The image is specified as follows: <span 
class="cmtt-10x-x-109">other=</span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name </span>or <span 
class="cmtt-10x-x-109">other=</span><span 
class="cmti-10x-x-109">file</span><span 
class="cmti-10x-x-109">_name</span>
</p><!--l. 2068--><p class="noindent" >In addition to the options listen in section <a 
href="#x1-440004.2.3">4.2.3<!--tex4ht:ref: cfggen --></a>, the following variables are recognized:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">change</span> </dt><dd 
class="description">Change the partition table according to the rules specified in this <span 
class="cmtt-10x-x-109">change </span>section. This option
     is intended for booting systems which find their partitions by examining the partition table.
     See section <a 
href="#x1-560004.5.3">4.5.3<!--tex4ht:ref: ptch --></a> for details.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">loader=</span><span 
class="cmti-10x-x-109">chain</span><span 
class="cmti-10x-x-109">_loader</span> </dt><dd 
class="description">Specifies the chain loader that should be used. If it is omitted, <span 
class="cmtt-10x-x-109">/boot/chain.b</span>
     is used.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">map-drive=</span><span 
class="cmti-10x-x-109">bios</span><span 
class="cmti-10x-x-109">_device</span><span 
class="cmti-10x-x-109">_code</span> </dt><dd 
class="description">Instructs <span 
class="cmtt-10x-x-109">chain.b </span>to installs a resident driver that re-maps the floppy
     or hard disk drives. This way, one can boot any operating system from a hard disk different
     from the first one, as long as that operating system uses <span 
class="cmbx-10x-x-109">only </span>the BIOS to access that hard

     disk.<span class="footnote-mark"><a 
href="user_21-519.html#fn23x0"><sup class="textsuperscript">23</sup></a></span><a 
 id="x1-49002f23"></a>
     This is known to work for PC/MS-DOS.
     <!--l. 2089--><p class="noindent" ><span 
class="cmtt-10x-x-109">map-drive </span>is followed by the variable <span 
class="cmtt-10x-x-109">to=</span><span 
class="cmti-10x-x-109">bios</span><span 
class="cmti-10x-x-109">_device</span><span 
class="cmti-10x-x-109">_code </span>which specifies the drive that should
     effectively be accessed instead of the original one. The list of mappings is only searched until
     the first match is found. It is therefore possible to &#8220;swap&#8221; drives, see the second example below.
     </p></dd><dt class="description">
<span 
class="cmtt-10x-x-109">table=</span><span 
class="cmti-10x-x-109">device</span> </dt><dd 
class="description">Specifies the device that contains the partition table. LILO&#x00A0;does not pass partition
     information to the booted operating system if this variable is omitted. (Some operating systems
     have other means to determine from which partition they have been booted. E.g. MS-DOS
     usually  stores  the  geometry  of  the  boot  disk  or  partition  in  its  boot  sector.)  Note  that
     <span 
class="cmtt-10x-x-109">/sbin/lilo </span>must be re-run if a partition table mapped referenced with <span 
class="cmtt-10x-x-109">table </span>is modified.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">unsafe</span> </dt><dd 
class="description">Do  not  access  the  boot  sector  at  map  creation  time.  This  disables  some  sanity  checks,
     including a partition table check. If the boot sector is on a fixed-format floppy disk device, using
     <span 
class="cmtt-10x-x-109">unsafe </span>avoids the need to put a readable disk into the drive when running the map installer.
     <span 
class="cmtt-10x-x-109">unsafe </span>and <span 
class="cmtt-10x-x-109">table </span>are mutually incompatible.</dd></dl>
<!--l. 2109--><p class="noindent" >None of these options can be set in the global options section.
</p><!--l. 2111--><p class="noindent" >Examples:

</p>
<div class="verbatim" id="verbatim-11">
other&#x00A0;=&#x00A0;/dev/hda2
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;dos
&#x00A0;<br />&#x00A0;&#x00A0;table&#x00A0;=&#x00A0;/dev/hda</div>
<!--l. 2116--><p class="nopar" >

</p>
<div class="verbatim" id="verbatim-12">
other&#x00A0;=&#x00A0;/dev/hdb2
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;os2
&#x00A0;<br />&#x00A0;&#x00A0;loader&#x00A0;=&#x00A0;/boot/os2_d.b
&#x00A0;<br />&#x00A0;&#x00A0;map-drive&#x00A0;=&#x00A0;0x80
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;to&#x00A0;=&#x00A0;0x81
&#x00A0;<br />&#x00A0;&#x00A0;map-drive&#x00A0;=&#x00A0;0x81
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;to&#x00A0;=&#x00A0;0x80</div>
<!--l. 2126--><p class="nopar" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.4   </span> <a 
 id="x1-500004.4"></a>Disk geometry</h4>
<!--l. 2132--><p class="noindent" >For floppies and most hard disks, LILO&#x00A0;can obtain the disk geometry information from the kernel.
Unfortunately, there are some exotic disks or adapters which may either not supply this information or
which may even return incorrect information.
</p><!--l. 2137--><p class="noindent" >If no geometry information is available, LILO&#x00A0;reports either the error <br 
class="newline" /><span 
class="cmtt-10x-x-109">geo</span><span 
class="cmtt-10x-x-109">_query</span><span 
class="cmtt-10x-x-109">_dev HDIO</span><span 
class="cmtt-10x-x-109">_GETGEO (dev 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">) </span><br 
class="newline" />or <br 
class="newline" /><span 
class="cmtt-10x-x-109">Device 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">: Got bad geometry </span><span 
class="cmti-10x-x-109">sec</span><span 
class="cmtt-10x-x-109">/</span><span 
class="cmti-10x-x-109">hd</span><span 
class="cmtt-10x-x-109">/</span><span 
class="cmti-10x-x-109">cyl</span>
</p><!--l. 2143--><p class="noindent" >If incorrect information is returned, booting may fail in several ways, typically with a partial &#8220;LILO&#8221;
banner message. In this document, that is called a &#8220;geometry mismatch&#8221;.
</p><!--l. 2147--><p class="noindent" >The next step should be to attempt setting the <span 
class="cmtt-10x-x-109">lba32 </span>or <span 
class="cmtt-10x-x-109">linear </span>configuration variable or the <span 
class="cmtt-10x-x-109">-L </span>or <span 
class="cmtt-10x-x-109">-l</span>
command-line option. If this doesn&#8217;t help, the entire disk geometry has to be specified explicitly. Note that
<span 
class="cmtt-10x-x-109">linear </span>doesn&#8217;t always work with floppy disks.
</p><!--l. 2152--><p class="noindent" >Another common use of disk sections is if an (E)IDE and a SCSI drive are used in the same system and the
BIOS is configured to use the SCSI drive as the first drive. (Normally, the (E)IDE drive would be the first
drive and the SCSI drive would be the second one.) Since LILO&#x00A0;doesn&#8217;t know how the BIOS
is configured, it needs to be told explicitly about this arrangement. (See the second example
below.)
</p><!--l. 2160--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.4.1   </span> <a 
 id="x1-510004.4.1"></a>Obtaining the geometry</h5>
<!--l. 2162--><p class="noindent" >The disk geometry parameters can be obtained by booting MS-DOS and running the program <span 
class="cmtt-10x-x-109">DPARAM.COM</span>
with the hexadecimal BIOS code of the drive as its argument, e.g. <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dparam</span><span 
class="cmtt-10x-x-109">&#x00A0;0x80</span></span></span> for the first hard disk. It
displays the number of sectors per track, the number of heads per cylinder and the number of cylinders. All
three numbers are one-based.

</p><!--l. 2169--><p class="noindent" >Alternatively, the geometry may also be determined by reading the information presented by the &#8220;setup&#8221;
section of the ROM-BIOS or by using certain disk utilities under operating systems accessing the disk
through the BIOS.
</p><!--l. 2174--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.4.2   </span> <a 
 id="x1-520004.4.2"></a>Specifying the geometry</h5>
<!--l. 2177--><p class="noindent" >Disk geometry parameters are specified in the options section of the configuration file. Each disk parameter
section begins with <span 
class="cmtt-10x-x-109">disk=</span><span 
class="cmti-10x-x-109">disk</span><span 
class="cmti-10x-x-109">_device</span>, similar to the way how boot images are specified. It is suggested to
group disk parameter sections together, preferably at the beginning or the end of the options
section.
</p><!--l. 2184--><p class="noindent" >For each disk, the following variables can be specified:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">bios=</span><span 
class="cmti-10x-x-109">bios</span><span 
class="cmti-10x-x-109">_device</span><span 
class="cmti-10x-x-109">_code</span> </dt><dd 
class="description">Is the number the BIOS uses to refer to that device. Normally, it&#8217;s <span 
class="cmtt-10x-x-109">0x80 </span>for
     the first hard disk and <span 
class="cmtt-10x-x-109">0x81 </span>for the second hard disk. Note that hexadecimal numbers have to
     begin with &#8220;0x&#8221;. If <span 
class="cmtt-10x-x-109">bios </span>is omitted, LILO&#x00A0;tries to &#8220;guess&#8221; that number.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">sectors=</span><span 
class="cmti-10x-x-109">sectors</span> </dt><dd 
class="description">and
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">heads=</span><span 
class="cmti-10x-x-109">heads</span> </dt><dd 
class="description">specify the number of sectors per track and the number of heads, i.e. the number of
     tracks per cylinder. Both parameters have to be either specified together or they have to be
     entirely omitted. If omitted, LILO&#x00A0;tries to obtain that geometry information from the kernel.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">cylinders=</span><span 
class="cmti-10x-x-109">cylinders</span> </dt><dd 
class="description">Specifies the number of cylinders. This value is only used for sanity checks.
     If <span 
class="cmtt-10x-x-109">cylinders </span>is omitted, LILO&#x00A0;uses the information obtained from the kernel if geometry
     information had to be requested in order to determine some other parameter. Otherwise,<span class="footnote-mark"><a 
href="user_21-520.html#fn24x0"><sup class="textsuperscript">24</sup></a></span><a 
 id="x1-52001f24"></a>
     it just assumes the number of cylinders to be 1024, which is the cylinder limit imposed by the
     BIOS.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">inaccessible</span> </dt><dd 
class="description">Marks the device as inaccessible (for the BIOS). This is useful if some disks on
     the system can&#8217;t be read by the BIOS, although LILO&#x00A0;&#8220;thinks&#8221; they can. If one accidentally
     tries to use files located on such disks for booting, the map installer won&#8217;t notice and the
     system becomes unbootable. The most likely use of <span 
class="cmtt-10x-x-109">inaccessible </span>is to prevent repetition after
     experiencing such a situation once. No other variables may be specified if a device is configured
     as <span 
class="cmtt-10x-x-109">inaccessible</span>.</dd></dl>
<!--l. 2217--><p class="noindent" >Additionally, partition subsections can be added with <span 
class="cmtt-10x-x-109">partition=</span><span 
class="cmti-10x-x-109">partition</span><span 
class="cmti-10x-x-109">_device</span>. Each partition section
can contain only one variable:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">start=</span><span 
class="cmti-10x-x-109">partition</span><span 
class="cmti-10x-x-109">_offset</span> </dt><dd 
class="description">Specifies the zero-based number of the start sector of that partition. The

     whole disk always has a partition offset of zero. The partition offset is only necessary when
     using devices for which the kernel does not provide that information, e.g. CD-ROMs.</dd></dl>
<!--l. 2228--><p class="noindent" >Examples:

</p>
<div class="verbatim" id="verbatim-13">
disk&#x00A0;=&#x00A0;/dev/sda
&#x00A0;<br />&#x00A0;&#x00A0;bios&#x00A0;=&#x00A0;0x80
&#x00A0;<br />&#x00A0;&#x00A0;sectors&#x00A0;=&#x00A0;32
&#x00A0;<br />&#x00A0;&#x00A0;heads&#x00A0;=&#x00A0;64
&#x00A0;<br />&#x00A0;&#x00A0;cylinders&#x00A0;=&#x00A0;632
&#x00A0;<br />&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda1
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;start&#x00A0;=&#x00A0;2048
&#x00A0;<br />&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda2
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;start&#x00A0;=&#x00A0;204800
&#x00A0;<br />&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda3
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;start&#x00A0;=&#x00A0;500000
&#x00A0;<br />&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda4
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;start&#x00A0;=&#x00A0;900000</div>
<!--l. 2243--><p class="nopar" >

</p>
<div class="verbatim" id="verbatim-14">
disk&#x00A0;=&#x00A0;/dev/sda
&#x00A0;<br />&#x00A0;&#x00A0;bios&#x00A0;=&#x00A0;0x80
&#x00A0;<br />disk&#x00A0;=&#x00A0;/dev/hda
&#x00A0;<br />&#x00A0;&#x00A0;bios&#x00A0;=&#x00A0;0x81</div>
<!--l. 2250--><p class="nopar" >
</p><!--l. 2253--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.5   </span> <a 
 id="x1-530004.5"></a>Partition table manipulation</h4>
<!--l. 2256--><p class="noindent" >Some non-Linux operating systems obtain information about their partitions (e.g. their equivalent of the
root file system) from the partition table. If more than one such operating system is installed on a PC,
they may have conflicting interpretations of the content of the partition table. Those problems
can be avoided by changing the partition table, depending on which operating system is being
booted.
</p><!--l. 2263--><p class="noindent" >Partition table changes are specified in a <span 
class="cmtt-10x-x-109">change </span>section in the configuration file section describing the
foreign operating system. Note that <span 
class="cmtt-10x-x-109">change </span>sections are only accepted if the build-time option
<span 
class="cmtt-10x-x-109">REWRITE</span><span 
class="cmtt-10x-x-109">_TABLE </span>is set.
</p><!--l. 2268--><p class="noindent" >The <span 
class="cmtt-10x-x-109">change </span>section contains subsections for each partition whose table entry needs to be modified.
Partitions are specified with <span 
class="cmtt-10x-x-109">partition=</span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name</span>
</p><!--l. 2272--><p class="noindent" >Changes are applied in the sequence in which they appear in the configuration file. Configurations
containing changes that are redundant either by repeating a previous change or by changing its result
further are invalid and refused by the map installer.
</p><!--l. 2277--><p class="noindent" >Internally, all changes are expressed as rules which specify the location (disk and offset in the
partition table), the value this location must contain before the change, and the value that
has to be stored. As a safety measure, the rule is ignored if the previous value is found to be
different.
</p><!--l. 2284--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.5.1   </span> <a 
 id="x1-540004.5.1"></a>Partition activation</h5>
<!--l. 2286--><p class="noindent" >This option is intended for booting systems which determine their boot partition by examining the active
flag in the partition table. The flag is enabled with <span 
class="cmtt-10x-x-109">activate </span>and disabled with <span 
class="cmtt-10x-x-109">deactivate</span>.
Note that only the current partition is affected. LILO&#x00A0;does not automatically change the active
flags of other partitions and it also allows more than one partition to be active at the same
time.

</p><!--l. 2293--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-15">
other&#x00A0;=&#x00A0;/dev/sda4
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;sco
&#x00A0;<br />&#x00A0;&#x00A0;change
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda4
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;activate
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda3
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;deactivate</div>
<!--l. 2303--><p class="nopar" >
</p><!--l. 2306--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.5.2   </span> <a 
 id="x1-550004.5.2"></a>Partition type change rules</h5>
<!--l. 2309--><p class="noindent" >Partition type changes are normally a transition between two possible values, e.g. a typical convention is to
set the lowest bit in the upper nibble of the partition type (i.e. 0x10) in order to &#8220;hide&#8221;, and to clear it to
&#8220;unhide&#8221; a partition. LILO&#x00A0;performs these changes based on a set of rules. Each rule defines
the name of a partition type, its normal value, and the value when hidden. Those rules are
defined in the options section of the configuration file. The section defining them begins with
<span 
class="cmtt-10x-x-109">change-rules</span>.
</p><!--l. 2318--><p class="noindent" >The following options and variables can appear in the section:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">reset</span> </dt><dd 
class="description">Removes all previously defined rules. This is needed if a user doesn&#8217;t wish to use the pre-defined
     rules (see below).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">type=</span><span 
class="cmti-10x-x-109">name</span> </dt><dd 
class="description">Adds a rule for the type with the specified name. Type names are case-insensitive. The
     values are defined with <span 
class="cmtt-10x-x-109">normal=</span><span 
class="cmti-10x-x-109">byte </span>and <span 
class="cmtt-10x-x-109">hidden=</span><span 
class="cmti-10x-x-109">byte</span>. Values can be specified as decimal or as
     hexadecimal numbers with a leading <span 
class="cmtt-10x-x-109">0x</span>. If only one of the values is present, the other value is
     assumed to be the same number, but with the most significant bit inverted.</dd></dl>
<!--l. 2331--><p class="noindent" >LILO&#x00A0;pre-defines rules for the three partition types of DOS partitions. The following example removes the
pre-defined rules and creates them again:

</p>
<div class="verbatim" id="verbatim-16">
change-rules
&#x00A0;<br />&#x00A0;&#x00A0;reset
&#x00A0;<br />&#x00A0;&#x00A0;type&#x00A0;=&#x00A0;DOS12
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;normal&#x00A0;=&#x00A0;0x01
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;hidden&#x00A0;=&#x00A0;0x11
&#x00A0;<br />&#x00A0;&#x00A0;type&#x00A0;=&#x00A0;DOS16_small
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;normal&#x00A0;=&#x00A0;4&#x00A0;#&#x00A0;hidden&#x00A0;is&#x00A0;0x14
&#x00A0;<br />&#x00A0;&#x00A0;type&#x00A0;=&#x00A0;DOS16_big
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;hidden&#x00A0;=&#x00A0;0x16</div>
<!--l. 2344--><p class="nopar" >
</p><!--l. 2347--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.5.3   </span> <a 
 id="x1-560004.5.3"></a>Partition type changes</h5>
<!--l. 2350--><p class="noindent" >Partition type changes are specified in the partition section as <span 
class="cmtt-10x-x-109">set=</span><span 
class="cmti-10x-x-109">name</span><span 
class="cmtt-10x-x-109">_</span><span 
class="cmti-10x-x-109">state</span>, where <span 
class="cmti-10x-x-109">name </span>is the name of
the partition type, and <span 
class="cmti-10x-x-109">state </span>is its state, i.e. <span 
class="cmtt-10x-x-109">normal </span>or <span 
class="cmtt-10x-x-109">hidden</span>.
</p><!--l. 2355--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-17">
other&#x00A0;=&#x00A0;/dev/sda3
&#x00A0;<br />&#x00A0;&#x00A0;label&#x00A0;=&#x00A0;dos
&#x00A0;<br />&#x00A0;&#x00A0;change
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda2
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;set&#x00A0;=&#x00A0;dos16_big_normal
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;partition&#x00A0;=&#x00A0;/dev/sda3
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;activate
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;set&#x00A0;=&#x00A0;DOS16_big_normal</div>
<!--l. 2366--><p class="nopar" >
</p><!--l. 2368--><p class="noindent" >Only one <span 
class="cmtt-10x-x-109">set </span>variable is allowed per partition section. In the rare event that more than one <span 
class="cmtt-10x-x-109">set </span>variable is
needed, further partition sections can be used.
</p><!--l. 2373--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">4.6   </span> <a 
 id="x1-570004.6"></a>Keyboard translation</h4>
<!--l. 2376--><p class="noindent" >The PC keyboard emits so-called scan codes, which are basically key numbers. The BIOS then translates
those scan codes to the character codes of the characters printed on the key-caps. By default, the BIOS
normally assumes that the keyboard has a US layout. Once an operating system is loaded, this operating
system can use a different mapping.
</p><!--l. 2382--><p class="noindent" >At boot time, LILO&#x00A0;only has access to the basic services provided by the BIOS and therefore receives the character
codes for an US keyboard. It provides a simple mechanism to re-map the character codes to what is appropriate for the
actual layout.<span class="footnote-mark"><a 
href="user_21-521.html#fn25x0"><sup class="textsuperscript">25</sup></a></span><a 
 id="x1-57001f25"></a>
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.6.1   </span> <a 
 id="x1-580004.6.1"></a>Compiling keyboard translation tables</h5>
<!--l. 2394--><p class="noindent" >LILO&#x00A0;obtains layout information from the keyboard translation tables Linux uses for the text
console. They are usually stored in <span 
class="cmtt-10x-x-109">/usr/lib/kbd/keytables</span>. LILO&#x00A0;comes with a program
<span 
class="cmss-10x-x-109">keytab-lilo.pl </span>that reads those tables and generates a table suitable for use by the map installer.
<span 
class="cmss-10x-x-109">keytab-lilo.pl </span>invokes the program <span 
class="cmss-10x-x-109">loadkeys </span>to print the tables in a format that is easy to parse.
<span class="footnote-mark"><a href="user_21-522.html#fn26x0"><sup class="textsuperscript">26</sup></a>
</span>
</p><!--l. 2404--><p class="noindent" ><span 
class="cmss-10x-x-109">keytab-lilo.pl </span>is used as follows:
</p><!--l. 2406--><p class="indent" ><span 
class="cmtt-10x-x-109">keytab-lilo.pl</span> <span class="big">[</span> <span 
class="cmtt-10x-x-109">-p </span><span 
class="cmti-10x-x-109">old_code</span><span 
class="cmtt-10x-x-109">=</span><span 
class="cmti-10x-x-109">new_code</span>  <span class="big">]</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> <span class="big">[</span><span 
class="cmti-10x-x-109">path</span><span class="big">]</span><span 
class="cmti-10x-x-109">default_layout</span><span class="big">[</span><span 
class="cmtt-10x-x-109">.extension</span><span class="big">]</span> <br 
class="newline" /><span class="big">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[</span><span 
class="cmti-10x-x-109">path</span><span class="big">]</span><span 
class="cmti-10x-x-109">kbd_layout</span><span class="big">[</span><span 
class="cmtt-10x-x-109">.extension</span><span class="big">]</span> <span 
class="cmtt-10x-x-109">&#x00A0;</span>
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">-p </span><span 
class="cmti-10x-x-109">old_code</span><span 
class="cmtt-10x-x-109">=</span><span 
class="cmti-10x-x-109">new_code</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Specifies corrections (&#8220;patches&#8221;) to the mapping obtained from the translation table files. E.g.
     if pressing the upper case &#8220;A&#8221; should yield an at sign, <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">-p</span><span 
class="cmtt-10x-x-109">&#x00A0;65=64</span></span></span> would be used. The <span 
class="cmtt-10x-x-109">-p </span>option
     can be repeated any number of times. The codes can also be given as hexadecimal or as octal
     numbers if they are prefixed with <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">0x</span></span></span> or <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">0</span></span></span>, respectively.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">path</span> </dt><dd 
class="description">The directory in which the file resides. The default path is <span 
class="cmtt-10x-x-109">/usr/lib/kbd/keytables</span>.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">extension</span> </dt><dd 
class="description">Usually the trailing <span 
class="cmtt-10x-x-109">.map</span>, which is automatically added if the file name doesn&#8217;t contain dots.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">default_layout</span> </dt><dd 
class="description">Is the layout which specifies the translation by the BIOS. If none is specified, <span 
class="cmtt-10x-x-109">us </span>is assumed.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">kbd_layout</span> </dt><dd 
class="description">Is the actual layout of the keyboard.</dd></dl>
<!--l. 2430--><p class="noindent" ><span 
class="cmss-10x-x-109">keytab-lilo.pl </span>writes the resulting translation table as a binary string to standard output. Such tables can be
stored anywhere with any name, but the suggested naming convention is <span 
class="cmtt-10x-x-109">/boot/</span><span 
class="cmti-10x-x-109">kbd</span><span 
class="cmtt-10x-x-109">.ktl </span>(&#8220;<span class="underline">K</span>eyboard <span class="underline">T</span>able
for <span class="underline">L</span>ilo&#8221;), where <span 
class="cmti-10x-x-109">kbd </span>is the name of the keyboard layout.
</p><!--l. 2436--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-18">
keytab-lilo.pl&#x00A0;de&#x00A0;&#x003E;/boot/de.ktl</div>
<!--l. 2439--><p class="nopar" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">4.6.2   </span> <a 
 id="x1-590004.6.2"></a>Using keyboard translation tables</h5>
<!--l. 2444--><p class="noindent" >The keyboard translation table file is specified with the global configuration option <span 
class="cmtt-10x-x-109">keytable=</span><span 
class="cmti-10x-x-109">table</span><span 
class="cmti-10x-x-109">_file</span>. The
complete name of the file has to be given.
</p><!--l. 2448--><p class="noindent" >Example:

</p>
<div class="verbatim" id="verbatim-19">
keytable&#x00A0;=&#x00A0;/boot/de.klt</div>
<!--l. 2451--><p class="nopar" >
</p><!--l. 2454--><p class="noindent" >

</p>
<h3 class="sectionHead"><span class="titlemark">5   </span> <a 
 id="x1-600005"></a>Installation and updates</h3>
<!--l. 2458--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">5.1   </span> <a 
 id="x1-610005.1"></a>Installation</h4>
<!--l. 2460--><p class="noindent" >This section describes the installation of LILO. See section <a 
href="#x1-720005.3">5.3<!--tex4ht:ref: deinst --></a> for how to uninstall LILO.
</p><!--l. 2464--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.1   </span> <a 
 id="x1-620005.1.1"></a>Compatibility</h5>
<!--l. 2466--><p class="noindent" >The kernel header files have to be in <span 
class="cmtt-10x-x-109">/usr/include/linux </span>and the kernel usually has to be configured by
running <span 
class="cmtt-10x-x-109">make config </span>before LILO&#x00A0;can be compiled.
</p><!--l. 2470--><p class="noindent" ><span 
class="cmtt-10x-x-109">/bin/sh </span>has to be a real Bourne shell. <span 
class="cmss-10x-x-109">bash </span>is sufficiently compatible, but some <span 
class="cmss-10x-x-109">ksh </span>clones may cause
problems.
</p><!--l. 2473--><p class="noindent" >A file named <span 
class="cmtt-10x-x-109">INCOMPAT </span>is included in the distribution. It describes incompatibilities to older versions of
LILO&#x00A0;and may also contain further compatibility notes.
</p><!--l. 2478--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.2   </span> <a 
 id="x1-630005.1.2"></a>Quick installation</h5>
<!--l. 2481--><p class="noindent" >If you want to install LILO&#x00A0;on your hard disk and if you don&#8217;t want to use all its features, you can use the
quick installation script. Read <span 
class="cmtt-10x-x-109">QuickInst </span>for details.
</p><!--l. 2485--><p class="noindent" ><span 
class="cmss-10x-x-109">QuickInst </span>can only be used for first-time installations or to entirely replace an existing installation, <span 
class="cmbx-10x-x-109">not </span>to
update or modify an existing installation of LILO. Be sure you&#8217;ve extracted LILO&#x00A0;into a directory that
doesn&#8217;t contain any files of other LILO&#x00A0;installations.
</p><!--l. 2492--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.3   </span> <a 
 id="x1-640005.1.3"></a>Files</h5>
<!--l. 2494--><p class="noindent" >Some of the files contained in <span 
class="cmtt-10x-x-109">lilo-21.tar.gz</span>:
</p><!--l. 2496--><p class="noindent" >

     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/README</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />This documentation in plain ASCII format. Some sections containing complex tables are only
     included in the <span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;version in <span 
class="cmtt-10x-x-109">doc/user.tex</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/INCOMPAT</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />List of incompatibilities to previous versions of LILO.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/CHANGES</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Change history.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/VERSION</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The version number of the respective release.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/QuickInst</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Quick installation script.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/lilo-</span><span 
class="cmti-10x-x-109">version</span><span 
class="cmtt-10x-x-109">.lsm</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The LSM (&#8220;<span class="underline">L</span>inux <span class="underline">S</span>oftware <span class="underline">M</span>ap&#8221;) entry of the respective LILO&#x00A0;release.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/Makefile</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Makefile to generate everything else.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/*.c</span><span 
class="cmbx-10x-x-109">, </span><span 
class="cmtt-10x-x-109">lilo/*.h</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />LILO map installer C source and common header files.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/*.S</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />LILO boot loader assembler source.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/activate.c</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />C source of a simple boot partition setter.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/dparam.s</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Assembler source of a disk parameter dumper.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/mkdist</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Shell script used to create the current LILO&#x00A0;distribution.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/keytab-lilo.pl</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Perl script to generate keyboard translation tables.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/README</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Description of how to generate the documentation.

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/Makefile</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Makefile  used  to  convert  the  <span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;source  into  either  DVI  output  or  the  plain  ASCII
     README file.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/user.tex</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" /><span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;source of LILO&#8217;s user&#8217;s guide (this document).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/tech.tex</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" /><span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;source of LILO&#8217;s technical overview.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/*.fig</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Various <span 
class="cmss-10x-x-109">xfig </span>pictures used in the technical overview.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/fullpage.sty</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Style file to save a few square miles of forest.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/rlatex</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Shell script that invokes <span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;repeatedly until all references have settled.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/doc/t2a.pl</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" /><span 
class="cmss-10x-x-109">Perl </span>script to convert the <span class="LATEX">L<span class="A">A</span><span class="TEX">T<span 
class="E">E</span>X</span></span>&#x00A0;source of the user&#8217;s guide to plain ASCII.</dd></dl>
<!--l. 2547--><p class="noindent" >Files created after <span 
class="cmtt-10x-x-109">make </span>in <span 
class="cmtt-10x-x-109">lilo/ </span>(among others):
</p><!--l. 2549--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/boot.b</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Combined boot sector. <span 
class="cmtt-10x-x-109">make install </span>puts this file into <span 
class="cmtt-10x-x-109">/boot</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/chain.b</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Generic chain loader. <span 
class="cmtt-10x-x-109">make install </span>puts this file into <span 
class="cmtt-10x-x-109">/boot</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/os2</span><span 
class="cmtt-10x-x-109">_d.b</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Chain loader to load <span 
class="cmss-10x-x-109">OS/2 </span>from the second hard disk. <span 
class="cmtt-10x-x-109">make install </span>puts this file into <span 
class="cmtt-10x-x-109">/boot</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/lilo</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />LILO&#x00A0;(map) installer. <span 
class="cmtt-10x-x-109">make install </span>puts this file into <span 
class="cmtt-10x-x-109">/sbin</span>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/activate</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Simple boot partition setter.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">lilo/dparam.com</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />MS-DOS executable of the disk parameter dumper.</dd></dl>

<!--l. 2566--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.4   </span> <a 
 id="x1-650005.1.4"></a>Normal first-time installation</h5>
<!--l. 2569--><p class="noindent" >First, you have to install the LILO&#x00A0;files:
</p>
     <ul class="itemize1">
     <li class="itemize">extract all files from <span 
class="cmtt-10x-x-109">lilo-</span><span 
class="cmti-10x-x-109">version</span><span 
class="cmtt-10x-x-109">.tar.gz </span>in a new directory.<span class="footnote-mark"><a 
href="user_21-523.html#fn27x0"><sup class="textsuperscript">27</sup></a></span><a 
 id="x1-65001f27"></a>
     </li>
     <li class="itemize">configure the <span 
class="cmtt-10x-x-109">Makefile </span>(see section <a 
href="#x1-660005.1.5">5.1.5<!--tex4ht:ref: cfgmf --></a>)
     </li>
     <li class="itemize">run   <span 
class="cmtt-10x-x-109">make  </span>to compile and assemble all parts.
     </li>
     <li class="itemize">run   <span 
class="cmtt-10x-x-109">make install  </span>to copy all LILO&#x00A0;files to the directories where they&#8217;re installed. <span 
class="cmtt-10x-x-109">/sbin</span>
     should now contain the file <span 
class="cmtt-10x-x-109">lilo</span>, <span 
class="cmtt-10x-x-109">/usr/sbin </span>should contain <span 
class="cmtt-10x-x-109">keytab-lilo.pl</span>, and <span 
class="cmtt-10x-x-109">/boot </span>should
     contain <span 
class="cmtt-10x-x-109">boot.b</span>, <span 
class="cmtt-10x-x-109">chain.b</span>, and <span 
class="cmtt-10x-x-109">os2</span><span 
class="cmtt-10x-x-109">_d.b</span>.</li></ul>
<!--l. 2584--><p class="noindent" >If you want to use LILO&#x00A0;on a non-standard disk, you might have to determine the parameters of your
disk(s) and specify them in the configuration file. See section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a> for details. If you&#8217;re using
such a non-standard system, the next step is to test LILO&#x00A0;with the boot sector on a floppy
disk:
</p>
     <ul class="itemize1">
     <li class="itemize">insert a blank (but low-level formatted) floppy disk into <span 
class="cmtt-10x-x-109">/dev/fd0</span>.
     </li>
     <li class="itemize">run <span 
class="cmtt-10x-x-109">echo image=</span><span 
class="cmti-10x-x-109">kernel</span><span 
class="cmti-10x-x-109">_image</span><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">&#x00A0;|</span></span></span><br 
class="newline" /><span 
class="cmtt-10x-x-109">/sbin/lilo -C - -b /dev/fd0 -v -v -v </span><br 
class="newline" />If you&#8217;ve already installed LILO&#x00A0;on your system, you might not want to overwrite your old
     map file. Use the <span 
class="cmtt-10x-x-109">-m </span>option to specify an alternate map file name.
     </li>
     <li class="itemize">reboot. LILO&#x00A0;should now load its boot loaders from the floppy disk and then continue loading
     the kernel from the hard disk.</li></ul>
<!--l. 2602--><p class="noindent" >Now, you have to decide, which boot concept you want to use. Let&#8217;s assume you have a Linux partition on
<span 
class="cmtt-10x-x-109">/dev/hda2 </span>and you want to install your LILO&#x00A0;boot sector there. The DOS-MBR loads the LILO&#x00A0;boot
sector.
</p>

     <ul class="itemize1">
     <li class="itemize">get a working boot disk, e.g. an install or recovery disk. Verify that you can boot with this
     setup and that you can mount your Linux partition(s) with it.
     </li>
     <li class="itemize">if the boot sector you want to overwrite with LILO&#x00A0;is of any value (e.g. it&#8217;s the MBR or if
     it contains a boot loader you might want to use if you encounter problems with LILO), you
     should mount your boot disk and make a backup copy of your boot sector to a file on that
     floppy, e.g. <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">dd</span><span 
class="cmtt-10x-x-109">&#x00A0;if=/dev/hda</span><span 
class="cmtt-10x-x-109">&#x00A0;of=/fd/boot_sector</span><span 
class="cmtt-10x-x-109">&#x00A0;bs=512</span><span 
class="cmtt-10x-x-109">&#x00A0;count=1</span></span></span>
     </li>
     <li class="itemize">create the configuration file <span 
class="cmtt-10x-x-109">/etc/lilo.conf</span>, e.g. <br 
class="newline" /><span 
class="cmti-10x-x-109">global settings </span><br 
class="newline" /><span 
class="cmti-10x-x-109">image specification </span><br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">&#x00A0;</span><span 
class="cmtt-10x-x-109">&#x00A0;</span></span></span><span 
class="cmti-10x-x-109">per-image options </span><br 
class="newline" /><span 
class="cmmi-10x-x-109">&#x2026;</span> <br 
class="newline" />Be sure to use absolute paths for all files. Relative paths may cause unexpected behaviour when
     using the <span 
class="cmtt-10x-x-109">-r </span>option.
     </li>
     <li class="itemize">now, you can check what LILO&#x00A0;would do if you were about to install it on your hard disk: <br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">/sbin/lilo</span><span 
class="cmtt-10x-x-109">&#x00A0;-v</span><span 
class="cmtt-10x-x-109">&#x00A0;-v</span><span 
class="cmtt-10x-x-109">&#x00A0;-v</span><span 
class="cmtt-10x-x-109">&#x00A0;-t</span></span></span>
     </li>
     <li class="itemize">if you need some additional boot utility (i.e. <span 
class="cmss-10x-x-109">BOOTACTV</span>), you should install that now
     </li>
     <li class="itemize">run <span 
class="cmtt-10x-x-109">/sbin/lilo </span>to install LILO&#x00A0;on your hard disk
     </li>
     <li class="itemize">if you have to change the active partition, use <span 
class="cmss-10x-x-109">fdisk </span>or <span 
class="cmss-10x-x-109">activate </span>to do that
     </li>
     <li class="itemize">reboot</li></ul>
<!--l. 2634--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.5   </span> <a 
 id="x1-660005.1.5"></a>Build-time configuration</h5>
<!--l. 2637--><p class="noindent" >Certain build-time parameters can be configured. They can either be edited in the top-level <span 
class="cmtt-10x-x-109">Makefile </span>or
they can be stored in a file <span 
class="cmtt-10x-x-109">/etc/lilo.defines</span>. Settings in the <span 
class="cmtt-10x-x-109">Makefile </span>are ignored if that file
exists.
</p><!--l. 2642--><p class="noindent" >The following items can be configured:
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">BEEP</span> </dt><dd 
class="description">Enables beeping after displaying &#8220;LILO&#8221;. This is useful on machines which don&#8217;t beep at the
     right time when booting and when working over a serial console. This option is disabled by
     default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">IGNORECASE</span> </dt><dd 
class="description">Makes image name matching case-insensitive, i.e. &#8220;linux&#8221; and &#8220;Linux&#8221; are identical.

     This option is enabled by default. Note that password matching is always case-sensitive.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LARGE</span><span 
class="cmtt-10x-x-109">_EBDA</span> </dt><dd 
class="description">Loads LILO&#x00A0;at a lower address in order to leave more space for the EBDA (Extended
     BIOS Data Area). This is necessary on some recent MP systems. Note that enabling <span 
class="cmtt-10x-x-109">LARGE</span><span 
class="cmtt-10x-x-109">_EBDA</span>
     reduces the maximum size of &#8220;small&#8221; images (e.g. &#8220;Image&#8221; or &#8220;zImage&#8221;).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">NO1STDIAG</span> </dt><dd 
class="description">Do not generate diagnostics on read errors in the first stage boot loader. This avoids
     possibly irritating error codes if the disk controller has transient read problems. This option is
     disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">NODRAIN</span> </dt><dd 
class="description">The boot loader empties the keyboard buffer when starting, because it may contain garbage
     on some systems. Draining the keyboard buffer can be disabled by setting the <span 
class="cmtt-10x-x-109">NODRAIN </span>option.
     <span 
class="cmtt-10x-x-109">NODRAIN </span>is disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">NOINSTDEF</span> </dt><dd 
class="description">If the option <span 
class="cmtt-10x-x-109">install </span>is omitted, don&#8217;t install a new boot sector, but try to modify the
     old boot sector instead. This option is disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">ONE</span><span 
class="cmtt-10x-x-109">_SHOT</span> </dt><dd 
class="description">Disables the command-line timeout (configuration variable <span 
class="cmtt-10x-x-109">timeout</span>) if any key is pressed.
     This way, very short timeouts can be used if <span 
class="cmtt-10x-x-109">prompt </span>is set. <span 
class="cmtt-10x-x-109">ONE</span><span 
class="cmtt-10x-x-109">_SHOT </span>is disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">READONLY</span> </dt><dd 
class="description">Disallows overwriting the default command line sector of the map file. This way, command
     lines set with <span 
class="cmtt-10x-x-109">-R </span>stay in effect until they are explicitly removed. <span 
class="cmtt-10x-x-109">READONLY </span>also disables <span 
class="cmtt-10x-x-109">lock</span>,
     <span 
class="cmtt-10x-x-109">fallback</span>, and everything enabled by <span 
class="cmtt-10x-x-109">REWRITE</span><span 
class="cmtt-10x-x-109">_TABLE</span>. This option is disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">REWRITE</span><span 
class="cmtt-10x-x-109">_TABLE</span> </dt><dd 
class="description">Enables rewriting the partition table at boot time. This may be necessary to boot
     certain operating systems who expect the active flag to be set on their partition or who need
     changes in partition types. See also section <a 
href="#x1-530004.5">4.5<!--tex4ht:ref: ptman --></a>. This option is <span 
class="cmbx-10x-x-109">dangerous </span>and it is disabled by
     default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">USE</span><span 
class="cmtt-10x-x-109">_TMPDIR</span> </dt><dd 
class="description">Use the directory indicated in the <span 
class="cmtt-10x-x-109">TMPDIR </span>environment variable when creating temporary
     device files. If <span 
class="cmtt-10x-x-109">TMPDIR </span>is not set or if LILO&#x00A0;is compiled without <span 
class="cmtt-10x-x-109">USE</span><span 
class="cmtt-10x-x-109">_TMPDIR</span>, temporary device
     files are created in <span 
class="cmtt-10x-x-109">/tmp</span>.<span class="footnote-mark"><a 
href="user_21-524.html#fn28x0"><sup class="textsuperscript">28</sup></a></span><a 
 id="x1-66001f28"></a>
     This option is disabled by default.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">VARSETUP</span> </dt><dd 
class="description">Enables the use of variable-size setup segments. This option is enabled by default and is
     only provided to fall back to fixed-size setup segments in the unlikely case of problems when
     using prehistoric kernels.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">XL</span><span 
class="cmtt-10x-x-109">_SECS=</span><span 
class="cmti-10x-x-109">sectors</span> </dt><dd 
class="description">Enable support for extra large (non-standard) floppy disks. The number of sectors
     is set in the BIOS disk parameter table to the specified value. Note that this hack may yield
     incorrect behaviour on some systems. This option is disabled by default.</dd></dl>

<!--l. 2701--><p class="noindent" ><span 
class="cmtt-10x-x-109">/etc/lilo.defines </span>should be used if one wishes to make permanent configuration changes. The usual
installation procedures don&#8217;t touch that file. Example:

</p>
<div class="verbatim" id="verbatim-20">
-DIGNORECASE&#x00A0;-DONE_SHOT</div>
<!--l. 2707--><p class="nopar" >
</p><!--l. 2709--><p class="noindent" >After changing the build-time configuration, LILO&#x00A0;has to be recompiled with the following
commands:

</p>
<div class="verbatim" id="verbatim-21">
make&#x00A0;spotless
&#x00A0;<br />make</div>
<!--l. 2715--><p class="nopar" >
</p><!--l. 2718--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.1.6   </span> <a 
 id="x1-670005.1.6"></a>Floppy disk installation</h5>
<!--l. 2720--><p class="noindent" >In some cases<span class="footnote-mark"><a 
href="user_21-525.html#fn29x0"><sup class="textsuperscript">29</sup></a></span><a 
 id="x1-67001f29"></a>,
it may be desirable to install LILO&#x00A0;on a floppy disk in a way that it can boot a kernel without accessing the
hard disk.
</p><!--l. 2724--><p class="noindent" >The basic procedure is quite straightforward (see also section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a>): </p>
     <ul class="itemize1">
     <li class="itemize">a file system has to be created on the file system
     </li>
     <li class="itemize">the kernel and <span 
class="cmtt-10x-x-109">boot.b </span>have to be copied to the floppy disk
     </li>
     <li class="itemize"><span 
class="cmtt-10x-x-109">/sbin/lilo </span>has to be run to create the map file</li></ul>
<!--l. 2731--><p class="noindent" >This can be as easy as

</p>
<div class="verbatim" id="verbatim-22">
/sbin/mke2fs&#x00A0;/dev/fd0
&#x00A0;<br />[&#x00A0;-d&#x00A0;/fd&#x00A0;]&#x00A0;||&#x00A0;mkdir&#x00A0;/fd
&#x00A0;<br />mount&#x00A0;/dev/fd0&#x00A0;/fd
&#x00A0;<br />cp&#x00A0;/boot/boot.b&#x00A0;/fd
&#x00A0;<br />cp&#x00A0;/zImage&#x00A0;/fd
&#x00A0;<br />echo&#x00A0;image=/fd/zImage&#x00A0;label=linux&#x00A0;|
&#x00A0;<br />&#x00A0;&#x00A0;/sbin/lilo&#x00A0;-C&#x00A0;-&#x00A0;-b&#x00A0;/dev/fd0&#x00A0;-i&#x00A0;/fd/boot.b&#x00A0;-c&#x00A0;-m&#x00A0;/fd/map
&#x00A0;<br />umount&#x00A0;/fd</div>
<!--l. 2741--><p class="nopar" >
</p><!--l. 2743--><p class="noindent" >The command line of <span 
class="cmtt-10x-x-109">/sbin/lilo </span>is a little tricky. <span 
class="cmtt-10x-x-109">-C - </span>takes the configuration from standard input
(naturally, one could also write the configuration into a file), <span 
class="cmtt-10x-x-109">-b /dev/fd0 </span>specifies that the boot
sector is written to the floppy disk, <span 
class="cmtt-10x-x-109">-i /fd/boot.b </span>takes the first and second stage loaders from
the floppy, <span 
class="cmtt-10x-x-109">-c </span>speeds up the load process, and <span 
class="cmtt-10x-x-109">-m /fd/map </span>puts the map file on the floppy
too.
</p>
<h4 class="subsectionHead"><span class="titlemark">5.2   </span> <a 
 id="x1-680005.2"></a>Updates</h4>
<!--l. 2753--><p class="noindent" >LILO&#x00A0;is affected by updates of kernels, the whole system and (trivially) of LILO&#x00A0;itself. Typically, only
<span 
class="cmtt-10x-x-109">/sbin/lilo </span>has to be run after any of those updates and everything will be well again (at least as far as
LILO&#x00A0;is concerned).
</p><!--l. 2759--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.2.1   </span> <a 
 id="x1-690005.2.1"></a>LILO&#x00A0;update</h5>
<!--l. 2762--><p class="noindent" >Before updating to a new version of LILO, you should read at least the file <span 
class="cmtt-10x-x-109">INCOMPAT </span>which describes
incompatibilities with previous releases.
</p><!--l. 2766--><p class="noindent" >After that, the initial steps are the same as for a first time installation: extract all files, configure the
<span 
class="cmtt-10x-x-109">Makefile</span>, run <span 
class="cmtt-10x-x-109">make </span>to build the executables and run <span 
class="cmtt-10x-x-109">make install </span>to install the files.
</p><!--l. 2771--><p class="noindent" >The old versions of <span 
class="cmtt-10x-x-109">boot.b</span>, <span 
class="cmtt-10x-x-109">chain.b</span>, etc. are automatically renamed to <span 
class="cmtt-10x-x-109">boot.old</span>, <span 
class="cmtt-10x-x-109">chain.old</span>, etc. This is
done to ensure that you can boot even if the installation procedure does not finish. <span 
class="cmtt-10x-x-109">boot.old</span>, <span 
class="cmtt-10x-x-109">chain.old</span>,
etc. can be deleted after the map file is rebuilt.
</p><!--l. 2777--><p class="noindent" >Because the locations of <span 
class="cmtt-10x-x-109">boot.b</span>, <span 
class="cmtt-10x-x-109">chain.b</span>, etc. have changed and because the map file format may be
different too, you have to update the boot sector and the map file. Run <span 
class="cmtt-10x-x-109">/sbin/lilo </span>to do
this.

</p><!--l. 2782--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.2.2   </span> <a 
 id="x1-700005.2.2"></a>Kernel update</h5>
<!--l. 2785--><p class="noindent" >Whenever any of the kernel files that are accessed by LILO&#x00A0;is moved or overwritten, the map has to be
re-built.<span class="footnote-mark"><a 
href="user_21-526.html#fn30x0"><sup class="textsuperscript">30</sup></a></span><a 
 id="x1-70001f30"></a>
Run <span 
class="cmtt-10x-x-109">/sbin/lilo </span>to do this.
</p><!--l. 2791--><p class="noindent" >The kernel has a make target &#8220;zlilo&#8221; that copies the kernel to <span 
class="cmtt-10x-x-109">/vmlinuz </span>and runs <span 
class="cmtt-10x-x-109">/sbin/lilo</span>.
</p>
<h5 class="subsubsectionHead"><span class="titlemark">5.2.3   </span> <a 
 id="x1-710005.2.3"></a>System upgrade</h5>
<!--l. 2797--><p class="noindent" >Normally, system upgrades (i.e. installation or removal of packages, possibly replacement of a large part of
the installed binaries) do not affect LILO. Of course, if a new kernel is installed in the process, the normal
kernel update procedure has to be followed (see section <a 
href="#x1-700005.2.2">5.2.2<!--tex4ht:ref: kernupd --></a>). Also, if kernels are removed or added, it may
be necessary to update the configuration file.
</p><!--l. 2804--><p class="noindent" >If LILO&#x00A0;is updated by this system upgrade, <span 
class="cmtt-10x-x-109">/sbin/lilo </span>should be run before booting the upgraded system.
It is generally a good idea not to rely on the upgrade procedure to perform this essential step
automatically.
</p><!--l. 2808--><p class="noindent" >However, system upgrades which involve removal and re-creation of entire partitions (e.g. <span 
class="cmtt-10x-x-109">/</span>, <span 
class="cmtt-10x-x-109">/usr</span>, etc.) are
different. First, they should be avoided, because they bear a high risk of losing other critical files, e.g. the
<span 
class="cmtt-10x-x-109">/etc/XF86Config </span>you&#8217;ve spent the last week fiddling with. If an upgrade really has to be performed in such
a brute-force way, this is equal with total removal of LILO, followed by a new installation. Therefore, the
procedures described in the sections <a 
href="#x1-720005.3">5.3<!--tex4ht:ref: deinst --></a> and <a 
href="#x1-690005.2.1">5.2.1<!--tex4ht:ref: liloupd --></a> have to be performed. If you&#8217;ve forgotten to make a
backup copy of <span 
class="cmtt-10x-x-109">/etc/lilo.conf </span>before the destructive upgrade, you might also have to go through section
<a 
href="#x1-650005.1.4">5.1.4<!--tex4ht:ref: install --></a> again.
</p><!--l. 2820--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">5.3   </span> <a 
 id="x1-720005.3"></a>LILO&#x00A0;de-installation</h4>
<!--l. 2823--><p class="noindent" >In order to stop LILO&#x00A0;from being invoked when the system boots, its boot sector has to be either removed
or disabled. All other files belonging to LILO&#x00A0;can be deleted <span 
class="cmbx-10x-x-109">after </span>removing the boot sector, if

desired.<span class="footnote-mark"><a 
href="user_21-527.html#fn31x0"><sup class="textsuperscript">31</sup></a></span><a 
 id="x1-72001f31"></a>
</p><!--l. 2830--><p class="noindent" >Again, <span 
class="cmbx-10x-x-109">when removing Linux, LILO</span><span 
class="cmbx-10x-x-109">&#x00A0;must be de-installed before (!) its files (</span><span 
class="cmtt-10x-x-109">/boot</span><span 
class="cmbx-10x-x-109">, etc.) are</span>
<span 
class="cmbx-10x-x-109">deleted. </span>This is especially important if LILO&#x00A0;is operating as the MBR.
</p><!--l. 2834--><p class="noindent" >LILO 14 (and newer) can be de-installed with <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">lilo</span><span 
class="cmtt-10x-x-109">&#x00A0;-u</span></span></span>. If LILO 14 or newer is currently installed, but the
first version of LILO installed was older than 14, <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">lilo</span><span 
class="cmtt-10x-x-109">&#x00A0;-U</span></span></span> may work. When using <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">-U</span></span></span>, the warning at the
end of this section applies.
</p><!--l. 2839--><p class="noindent" >If LILO&#8217;s boot sector has been installed on a primary partition and is booted by the &#8220;standard&#8221; MBR or
some partition switcher program, it can be disabled by making a different partition active. MS-DOS&#8217;
FDISK, Linux <span 
class="cmss-10x-x-109">fdisk </span>or LILO&#8217;s <span 
class="cmss-10x-x-109">activate </span>can do that.
</p><!--l. 2844--><p class="noindent" >If LILO&#8217;s boot sector is the master boot record (MBR) of a disk, it has to be replaced with a different
MBR, typically MS-DOS&#8217; &#8220;standard&#8221; MBR. When using MS-DOS 5.0 or above, the MS-DOS
MBR can be restored with <span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">FDISK</span><span 
class="cmtt-10x-x-109">&#x00A0;/MBR</span></span></span>. This only alters the boot loader code, not the partition
table.
</p><!--l. 2850--><p class="noindent" >LILO&#x00A0;automatically makes backup copies when it overwrites boot sectors. They are named
<br 
class="newline" /><span 
class="cmtt-10x-x-109">/boot/boot.</span><span 
class="cmti-10x-x-109">nnnn</span>, with <span 
class="cmti-10x-x-109">nnnn </span>corresponding to the device number, e.g. <span 
class="cmtt-10x-x-109">0300 </span>is <span 
class="cmtt-10x-x-109">/dev/hda</span>, <span 
class="cmtt-10x-x-109">0800 </span>is
<span 
class="cmtt-10x-x-109">/dev/sda</span>, etc. Those backups can be used to restore the old MBR if no easier method is available. The
commands are <br 
class="newline" /><span 
class="cmtt-10x-x-109">dd if=/boot/boot.0300 of=/dev/hda bs=446 count=1 </span>or <br 
class="newline" /><span 
class="cmtt-10x-x-109">dd if=/boot/boot.0800 of=/dev/sda bs=446 count=1 </span><br 
class="newline" />respectively.
</p><!--l. 2860--><p class="noindent" ><span 
class="cmbx-10x-x-109">WARNING: </span>Some Linux distributions install <span 
class="cmtt-10x-x-109">boot.</span><span 
class="cmti-10x-x-109">nnnn </span>files from the system where the distribution was
created. Using those files may yield unpredictable results. Therefore, the file creation date should be
carefully checked.
</p>
<h4 class="subsectionHead"><span class="titlemark">5.4   </span> <a 
 id="x1-730005.4"></a>Installation of other operating systems</h4>
<!--l. 2870--><p class="noindent" >Some other operating systems (e.g. MS-DOS 6.0) appear to modify the MBR in their install procedures. It
is therefore possible that LILO&#x00A0;will stop to work after such an installation and Linux has to be
booted from floppy disk. The original state can be restored by either re-running <span 
class="cmtt-10x-x-109">/sbin/lilo  </span>(if
LILO&#x00A0;is installed as the MBR) or by making LILO&#8217;s partition active (if it&#8217;s installed on a primary
partition).
</p><!--l. 2877--><p class="noindent" >It is generally a good idea to install LILO&#x00A0;after the other operating systems have been installed. E.g. OS/2
is said to cause trouble when attempting to add it to an existing Linux system. (However, booting from
floppy and running <span 
class="cmtt-10x-x-109">/sbin/lilo </span>should get around most interferences.)
</p><!--l. 2883--><p class="noindent" >Typically, the new operating system then has to be added to LILO&#8217;s configuration (and <span 
class="cmtt-10x-x-109">/sbin/lilo </span>has to
be re-run) in order to boot it.

</p><!--l. 2887--><p class="noindent" >See also section <a 
href="#x1-810006.3">6.3<!--tex4ht:ref: othpro --></a> for a list of known problems with some other operating systems.
</p><!--l. 2891--><p class="noindent" >

</p>
<h3 class="sectionHead"><span class="titlemark">6   </span> <a 
 id="x1-740006"></a>Troubleshooting</h3>
<!--l. 2894--><p class="noindent" >All parts of LILO&#x00A0;display some messages that can be used to diagnose problems.
</p><!--l. 2898--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">6.1   </span> <a 
 id="x1-750006.1"></a>Map installer warnings and errors</h4>
<!--l. 2900--><p class="noindent" >Most messages of the map installer (<span 
class="cmtt-10x-x-109">/sbin/lilo</span>) should be self-explanatory. Some messages that indicate
common errors are listed below. They are grouped into fatal errors and warnings (non-fatal
errors).
</p><!--l. 2906--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">6.1.1   </span> <a 
 id="x1-760006.1.1"></a>Fatal errors</h5>
<!--l. 2908--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">Boot sector of </span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name  </span><span 
class="cmtt-10x-x-109">doesn&#8217;t have a boot signature</span> </dt><dd 
class="description">
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Boot sector of </span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name  </span><span 
class="cmtt-10x-x-109">doesn&#8217;t have a LILO signature</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The sector from which LILO&#x00A0;should be uninstalled doesn&#8217;t appear to be a LILO&#x00A0;boot sector.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Can&#8217;t put the boot sector on logical partition </span><span 
class="cmti-10x-x-109">number</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />An attempt has been made to put LILO&#8217;s boot sector on the current root file system partition
     which is on a logical partition. This usually doesn&#8217;t have the desired effect, because common
     MBRs can only boot primary partitions. This check can be bypassed by explicitly specifying
     the boot partition with the <span 
class="cmtt-10x-x-109">-b </span>option or by setting the configuration variable <span 
class="cmtt-10x-x-109">boot</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Checksum error</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The descriptor table of the map file has an invalid checksum. Refresh the map file <span 
class="cmbx-10x-x-109">immediately</span>
     !
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Device 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">: Configured as inaccessible.</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />There is a <span 
class="cmtt-10x-x-109">disk </span>section entry indicating that the device is inaccessible from the BIOS. You
     should check carefully that all files LILO&#x00A0;tries to access when booting are on the right device.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Device 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">: Got bad geometry </span><span 
class="cmti-10x-x-109">sec</span><span 
class="cmtt-10x-x-109">/</span><span 
class="cmti-10x-x-109">hd</span><span 
class="cmtt-10x-x-109">/</span><span 
class="cmti-10x-x-109">cyl</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The device driver for your SCSI controller does not support geometry detection. You have to
     specify the geometry explicitly (see section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a>).

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Device 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">: Invalid partition table, entry </span><span 
class="cmti-10x-x-109">number</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The 3D and linear addresses of the first sector of the specified partition don&#8217;t correspond. This
     is typically caused by partitioning a disk with a program that doesn&#8217;t align partitions to tracks
     and later using PC/MS-DOS or OS/2 on that disk. LILO&#x00A0;can attempt to correct the problem,
     see page <span class="pageref"><a 
href="#x1-430004.2.2"><span 
class="tcrm-1095">�</span></a></span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Device 0x</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">: Partition type 0x</span><span 
class="cmti-10x-x-109">number</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" /><span 
class="cmtt-10x-x-109">does not seem suitable for a LILO boot sector</span>&#x00A0;<br 
class="newline" />The location where the LILO&#x00A0;boot sector should be placed does not seem to be suitable for
     that. (See also also section <a 
href="#x1-60002.1">2.1<!--tex4ht:ref: diskorg --></a>). You should either adjust the partition type to reflect the actual
     use or put the boot sector on a different partition. This consistency check only yields a warning
     (i.e. LILO&#x00A0;continues) if the option <span 
class="cmtt-10x-x-109">ignore-table </span>is set.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name  </span><span 
class="cmtt-10x-x-109">is not a valid partition device</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified device is either not a device at all, a whole disk, or a partition on a different disk
     than the one in whose section its entry appears.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name  </span><span 
class="cmtt-10x-x-109">is not a whole disk device</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Only the geometry of whole disks (e.g. <span 
class="cmtt-10x-x-109">/dev/hda</span>, <span 
class="cmtt-10x-x-109">/dev/sdb</span>, etc.) can be redefined when using
     <span 
class="cmtt-10x-x-109">disk </span>sections.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">DISKTAB and DISK are mutually exclusive</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />You  cannot  use  a  <span 
class="cmtt-10x-x-109">disktab </span>file  and  disk  geometry  definitions  in  the  configuration  file  at
     the same time. Maybe <span 
class="cmtt-10x-x-109">/etc/disktab </span>was accidentally used, because that&#8217;s the default for
     backward-compatibility. You should delete <span 
class="cmtt-10x-x-109">/etc/disktab </span>after completing the transition to
     <span 
class="cmtt-10x-x-109">disk </span>sections.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Duplicate entry in partition table</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />A partition table entry appears twice. The partition table has to be fixed with <span 
class="cmss-10x-x-109">fdisk</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Duplicate geometry definition for </span><span 
class="cmti-10x-x-109">device</span><span 
class="cmti-10x-x-109">_name</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />A  disk  or  partition  geometry  definition  entry  for  the  same  device  appears  twice  in  the
     configuration file. Note that you mustn&#8217;t write a partition section for the whole disk &#8212; its start
     sector is always the first sector of the disk.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">First sector of </span><span 
class="cmti-10x-x-109">device  </span><span 
class="cmtt-10x-x-109">doesn&#8217;t have a valid boot signature</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The first sector of the specified device does not appear to be a valid boot sector. You might have
     confused the device name.<span class="footnote-mark"><a 
href="user_21-528.html#fn32x0"><sup class="textsuperscript">32</sup></a></span><a 
 id="x1-76001f32"></a>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">geo</span><span 
class="cmtt-10x-x-109">_comp</span><span 
class="cmtt-10x-x-109">_addr: Cylinder </span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmtt-10x-x-109">beyond end of media (</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />A file block appears to be located beyond the last cylinder of the disk. This probably indicates

     an error in the disk geometry specification (see section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a>) or a file system corruption.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">geo</span><span 
class="cmtt-10x-x-109">_comp</span><span 
class="cmtt-10x-x-109">_addr: Cylinder number is too big (</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmmi-10x-x-109">&#x003E; </span><span 
class="cmtt-10x-x-109">1023)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Blocks of a file are located beyond the 1024th cylinder of a hard disk. LILO&#x00A0;can&#8217;t access such
     files, because the BIOS limits cylinder numbers to the range 0<span 
class="cmmi-10x-x-109">&#x2026;</span>1023. Try moving the file to a
     different place, preferably a partition that is entirely within the first 1024 cylinders of the disk.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Hole found in map file (</span><span 
class="cmti-10x-x-109">location</span><span 
class="cmtt-10x-x-109">)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The map installer is confused about the disk organization. Please report this error.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">item  </span><span 
class="cmtt-10x-x-109">doesn&#8217;t have a valid LILO signature</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified item has been located, but is not part of LILO.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">item  </span><span 
class="cmtt-10x-x-109">has an invalid stage code (</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified item has probably been corrupted. Try re-building LILO.
     </dd><dt class="description">
<span 
class="cmti-10x-x-109">item  </span><span 
class="cmtt-10x-x-109">is version </span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">. Expecting version</span><span 
class="cmti-10x-x-109">number</span><span 
class="cmtt-10x-x-109">.</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified entity is either too old or too new. Make sure all parts of LILO&#x00A0;(map installer,
     boot loaders and chain loaders) are from the same distribution. <span class="footnote-mark"><a 
href="#fn33x0"><sup class="textsuperscript">33</sup></a></span><a 
 id="x1-76002f33"></a>
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Kernel </span><span 
class="cmti-10x-x-109">name  </span><span 
class="cmtt-10x-x-109">is too big</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The kernel image (without the setup code) is bigger than 512 kbytes (or 448 kbytes, if built with
     <span 
class="cmtt-10x-x-109">LARGE</span><span 
class="cmtt-10x-x-109">_EBDA</span>). LILO&#x00A0;would overwrite itself when trying to load such a kernel. This limitation
     only applies to old kernels which are loaded below 0x10000 (e.g. &#8220;Image&#8221; or &#8220;zImage&#8221;). Try
     building the kernel with &#8220;bzImage&#8221;. If this is undesirable for some reason, try removing some
     unused drivers and compiling the kernel again. This error may also occur if the kernel image is
     damaged or if it contains trailing &#8220;junk&#8221;, e.g. as the result of copying an entire boot floppy to
     the hard disk.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LOCK and FALLBACK are mutually exclusive</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Since <span 
class="cmtt-10x-x-109">lock </span>and <span 
class="cmtt-10x-x-109">fallback </span>both change the default command line, they can&#8217;t be reasonably used
     together.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Map </span><span 
class="cmti-10x-x-109">path  </span><span 
class="cmtt-10x-x-109">is not a regular file.</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />This is probably the result of an attempt to omit writing a map file, e.g. with <span 
class="cmtt-10x-x-109">-m /dev/null</span>.
     The <span 
class="cmtt-10x-x-109">-t </span>option should be used to accomplish this.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Must specify SECTORS and HEADS together</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />It is assumed that disks with a &#8220;strange&#8221; number of sectors will also have a &#8220;strange&#8221; number
     of heads. Therefore, it&#8217;s all or nothing.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">No geometry variables allowed if INACCESSIBLE</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />If a device is configured as <span 
class="cmtt-10x-x-109">inaccessible </span>(see section <a 
href="#x1-520004.4.2">4.4.2<!--tex4ht:ref: diskspec --></a>), its <span 
class="cmtt-10x-x-109">disk </span>section must not contain
     any geometry variables.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">No image </span><span 
class="cmti-10x-x-109">image  </span><span 
class="cmtt-10x-x-109">is defined</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The command line specified either with the <span 
class="cmtt-10x-x-109">-R </span>option or with <span 
class="cmtt-10x-x-109">fallback </span>does not contain the
     name of a valid image. Note that optional images which have not been included in the map file
     are not considered as valid.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Partition entry not found</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The partition from which an other operating system should be booted isn&#8217;t listed in the specified
     partition table. This either means that an incorrect partition table has been specified or that
     you&#8217;re trying to boot from a logical partition. The latter usually doesn&#8217;t work. You can bypass
     this check by omitting the partition table specification (e.g. omitting the variable <span 
class="cmtt-10x-x-109">table</span>).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Single-key clash: "</span><span 
class="cmti-10x-x-109">name</span><span 
class="cmtt-10x-x-109">" vs. "</span><span 
class="cmti-10x-x-109">name</span><span 
class="cmtt-10x-x-109">"</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified image labels or aliases conflict because one of them is a single character and has
     the <span 
class="cmtt-10x-x-109">single-key </span>option set, and the other name begins with that character.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Sorry, don&#8217;t know how to handle device </span><span 
class="cmti-10x-x-109">number</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />LILO&#x00A0;uses files that are located on a device for which there is no easy way to determine the
     disk geometry. Such devices have to be explicitly described, see section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">This LILO is compiled READONLY and doesn&#8217;t support</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />If LILO&#x00A0;is not allowed to write to the disk at boot time (see section <a 
href="#x1-660005.1.5">5.1.5<!--tex4ht:ref: cfgmf --></a>), options like <span 
class="cmtt-10x-x-109">lock</span>
     and <span 
class="cmtt-10x-x-109">fallback </span>are unavailable.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">This LILO is compiled without REWRITE</span><span 
class="cmtt-10x-x-109">_TABLE and doesn&#8217;t support</span> <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />If LILO&#x00A0;is not allowed to rewrite partition tables at boot time (see section <a 
href="#x1-530004.5">4.5<!--tex4ht:ref: ptman --></a>), options like
     <span 
class="cmtt-10x-x-109">activate </span>and <span 
class="cmtt-10x-x-109">set </span>(in a <span 
class="cmtt-10x-x-109">change </span>section) are unavailable. You may also get this error if LILO&#x00A0;is
     compiled with <span 
class="cmtt-10x-x-109">READONLY </span>enabled.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Timestamp in boot sector of </span><span 
class="cmti-10x-x-109">device  </span><span 
class="cmtt-10x-x-109">differs from date of </span><span 
class="cmti-10x-x-109">file</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The backup copy of the boot sector does not appear to be an ancestor of the current boot
     sector. If you are absolutely sure that the boot sector is indeed correct, you can bypass this
     check by using <span 
class="cmtt-10x-x-109">-U </span>instead of <span 
class="cmtt-10x-x-109">-u</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Trying to map files from unnamed device 0x</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmtt-10x-x-109">(NFS ?)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />This is probably the same problem as described below, only with the root file system residing
     on NFS.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Trying to map files from your RAM disk.</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" /><span 
class="cmtt-10x-x-109">Please check -r option or ROOT environment variable.</span>&#x00A0;<br 
class="newline" />Most likely, you or some installation script is trying to invoke LILO&#x00A0;in a way that some of the
     files is has to access reside on the RAM disk. Normally, the <span 
class="cmtt-10x-x-109">ROOT </span>environment variable should
     be set to the mount point of the effective root device if installing LILO&#x00A0;with a different root

     directory. See also sections <a 
href="#x1-350004.1.2">4.1.2<!--tex4ht:ref: creupd --></a> and <a 
href="#x1-650005.1.4">5.1.4<!--tex4ht:ref: install --></a>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">VGA mode presetting is not supported by your kernel.</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Your kernel sources appear to be very old (&#8217;93 ?). LILO&#x00A0;may work on your system if you remove
     the <span 
class="cmtt-10x-x-109">vga </span>option.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">write </span><span 
class="cmti-10x-x-109">item</span><span 
class="cmtt-10x-x-109">: </span><span 
class="cmti-10x-x-109">error</span><span 
class="cmti-10x-x-109">_reason</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The disk is probably full or mounted read-only.</dd></dl>
<!--l. 3087--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">6.1.2   </span> <a 
 id="x1-770006.1.2"></a>Warnings</h5>
<!--l. 3090--><p class="noindent" >Messages labeled with &#8220;Warning&#8221; can be turned off with the <span 
class="cmtt-10x-x-109">nowarn </span>option.
</p><!--l. 3093--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">FIGETBSZ </span><span 
class="cmti-10x-x-109">file</span><span 
class="cmti-10x-x-109">_name</span><span 
class="cmtt-10x-x-109">:  </span><span 
class="cmti-10x-x-109">error</span><span 
class="cmti-10x-x-109">_reason</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The map installer is unable to determine the block size of a file system. It assumes a block size
     of two sectors (1kB).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Ignoring entry &#8217;</span><span 
class="cmti-10x-x-109">variable</span><span 
class="cmti-10x-x-109">_name</span><span 
class="cmtt-10x-x-109">&#8217;</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The  command-line  option  corresponding  to  the  specified  variable  is  set.  Therefore,  the
     configuration file entry is ignored.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Setting DELAY to 20 (2 seconds)</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Because accidentally booting the wrong kernel or operating system may be very inconvenient
     on systems that are not run from a local display, the minimum delay is two seconds if the
     <span 
class="cmtt-10x-x-109">serial </span>variable is set.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">(temp) </span><span 
class="cmti-10x-x-109">item</span><span 
class="cmtt-10x-x-109">: </span><span 
class="cmti-10x-x-109">error</span><span 
class="cmti-10x-x-109">_reason</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Deleting a temporary file has failed for the specified reason.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: BIOS drive 0x</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmtt-10x-x-109">may not be accessible</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Because most BIOS versions only support two floppies and two hard disks, files located on
     additional disks may be inaccessible. This warning indicates that some kernels or even the
     whole system may be unbootable.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: COMPACT may conflict with LINEAR on some systems</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Please see section <a 
href="#x1-810006.3">6.3<!--tex4ht:ref: othpro --></a> for a description of this problem.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file  </span><span 
class="cmtt-10x-x-109">should be owned by root</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />In order to prevent users from compromising system integrity, the configuration file should be

     owned by root and write access for all other users should be disabled.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file  </span><span 
class="cmtt-10x-x-109">should be readable only for root if using PASSWORD</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />Users should not be allowed to read the configuration file when using the <span 
class="cmtt-10x-x-109">password </span>option,
     because then, it contains unencrypted passwords.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file  </span><span 
class="cmtt-10x-x-109">should be writable only for root</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />See &#8220;<span 
class="cmtt-10x-x-109">Warning: </span><span 
class="cmti-10x-x-109">config</span><span 
class="cmti-10x-x-109">_file  </span><span 
class="cmtt-10x-x-109">should be owned by root</span>&#8221;.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: device 0x</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmtt-10x-x-109">exceeds 1024 cylinder limit</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />A disk or partition exceeds the 1024 cylinder limit imposed by the BIOS. This may result in
     a fatal error in the current installation run or in later installation runs. See &#8220;<span 
class="cmtt-10x-x-109">geo</span><span 
class="cmtt-10x-x-109">_comp</span><span 
class="cmtt-10x-x-109">_addr:</span>
     <span 
class="cmtt-10x-x-109">Cylinder number is too big (</span><span 
class="cmti-10x-x-109">number  </span><span 
class="cmmi-10x-x-109">&#x003E; </span><span 
class="cmtt-10x-x-109">1023)</span>&#8221; for details.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">Warning: </span><span 
class="cmti-10x-x-109">device  </span><span 
class="cmtt-10x-x-109">is not on the first disk</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />The specified partition is probably not on the first disk. LILO&#8217;s boot sector can only be booted
     from the first disk unless some special boot manager is used.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">WARNING: The system is unbootable !</span> </dt><dd 
class="description">&#x00A0;<br 
class="newline" />One of the last installation steps has failed. This warning is typically followed by a fatal error
     describing the problem.</dd></dl>
<!--l. 3137--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">6.2   </span> <a 
 id="x1-780006.2"></a>Boot loader messages</h4>
<!--l. 3139--><p class="noindent" >The boot loader generates three types of messages: progress and error messages while it is loading, messages
indicating disk access errors, and error messages in response to invalid command-line input.
Since messages of the latter type are usually self-explanatory, only the two other categories are
explained.
</p><!--l. 3146--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">6.2.1   </span> <a 
 id="x1-790006.2.1"></a>LILO&#x00A0;start message</h5>
<!--l. 3148--><p class="noindent" >When LILO&#x00A0;loads itself, it displays the word &#8220;LILO&#8221;. Each letter is printed before or after performing some
specific action. If LILO&#x00A0;fails at some point, the letters printed so far can be used to identify the problem.
This is described in more detail in the technical overview.
</p><!--l. 3153--><p class="noindent" >Note that some hex digits may be inserted after the first &#8220;L&#8221; if a transient disk problem occurs. Unless
LILO stops at that point, generating an endless stream of error codes, such hex digits do not indicate a
severe problem.
</p><!--l. 3158--><p class="noindent" >

     </p><dl class="description"><dt class="description">
(<span 
class="cmti-10x-x-109">nothing</span>) </dt><dd 
class="description">No part of LILO&#x00A0;has been loaded. LILO&#x00A0;either isn&#8217;t installed or the partition on which
     its boot sector is located isn&#8217;t active.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">L </span><span 
class="cmti-10x-x-109">error</span>  <span 
class="cmmi-10x-x-109">&#x2026;</span> </dt><dd 
class="description">The first stage boot loader has been loaded and started, but it can&#8217;t load the second
     stage boot loader. The two-digit error codes indicate the type of problem. (See also section
     <a 
href="#x1-800006.2.2">6.2.2<!--tex4ht:ref: bioserr --></a>.) This condition usually indicates a media failure or a geometry mismatch (e.g. bad disk
     parameters, see section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a>).
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LI</span> </dt><dd 
class="description">The first stage boot loader was able to load the second stage boot loader, but has failed to execute
     it. This can either be caused by a geometry mismatch or by moving <span 
class="cmtt-10x-x-109">/boot/boot.b </span>without
     running the map installer.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LIL</span> </dt><dd 
class="description">The second stage boot loader has been started, but it can&#8217;t load the descriptor table from the
     map file. This is typically caused by a media failure or by a geometry mismatch.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LIL?</span> </dt><dd 
class="description">The second stage boot loader has been loaded at an incorrect address. This is typically caused
     by a subtle geometry mismatch or by moving <span 
class="cmtt-10x-x-109">/boot/boot.b </span>without running the map installer.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LIL-</span> </dt><dd 
class="description">The descriptor table is corrupt. This can either be caused by a geometry mismatch or by
     moving <span 
class="cmtt-10x-x-109">/boot/map </span>without running the map installer.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">LILO</span> </dt><dd 
class="description">All parts of LILO&#x00A0;have been successfully loaded.</dd></dl>
<!--l. 3185--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><span class="titlemark">6.2.2   </span> <a 
 id="x1-800006.2.2"></a>Disk error codes</h5>
<!--l. 3188--><p class="noindent" >If the BIOS signals an error when LILO&#x00A0;is trying to load a boot image, the respective error code is
displayed. The following BIOS error codes are known:
</p><!--l. 3192--><p class="noindent" >
     </p><dl class="description"><dt class="description">
<span 
class="cmtt-10x-x-109">0x00</span> </dt><dd 
class="description">&#8220;Internal error&#8221;. This code is generated by the sector read routine of the LILO&#x00A0;boot loader
     whenever an internal inconsistency is detected. This might be caused by corrupt files. Try
     re-building the map file. Another possible cause for this error are attempts to access cylinders
     beyond 1024 while using the <span 
class="cmtt-10x-x-109">linear </span>option. See section <a 
href="#x1-160002.3.1">2.3.1<!--tex4ht:ref: broken --></a> for more details and for how to
     solve the problem.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x01</span> </dt><dd 
class="description">&#8220;Illegal command&#8221;. This shouldn&#8217;t happen, but if it does, it may indicate an attempt to access
     a disk which is not supported by the BIOS. See also &#8220;Warning: BIOS drive 0x<span 
class="cmti-10x-x-109">number </span>may not
     be accessible&#8221; in section <a 
href="#x1-770006.1.2">6.1.2<!--tex4ht:ref: warnings --></a>.

     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x02</span> </dt><dd 
class="description">&#8220;Address mark not found&#8221;. This usually indicates a media problem. Try again several times.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x03</span> </dt><dd 
class="description">&#8220;Write-protected disk&#8221;. This should only occur on write operations.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x04</span> </dt><dd 
class="description">&#8220;Sector  not  found&#8221;.  This  typically  indicates  a  geometry  mismatch.  If  you&#8217;re  booting  a
     raw-written disk image, verify whether it was created for disks with the same geometry as the
     one you&#8217;re using. If you&#8217;re booting from a SCSI disk or a large IDE disk, you should check,
     whether LILO&#x00A0;has obtained correct geometry data from the kernel or whether the geometry
     definition corresponds to the real disk geometry. (See section <a 
href="#x1-500004.4">4.4<!--tex4ht:ref: diskgeo --></a>.) Removing <span 
class="cmtt-10x-x-109">compact </span>may help
     too. So may adding <span 
class="cmtt-10x-x-109">lba32 </span>or <span 
class="cmtt-10x-x-109">linear</span>.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x06</span> </dt><dd 
class="description">&#8220;Change line active&#8221;. This should be a transient error. Try booting a second time.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x07</span> </dt><dd 
class="description">&#8220;Invalid initialization&#8221;. The BIOS failed to properly initialize the disk controller. You should
     control the BIOS setup parameters. A warm boot might help too.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x08</span> </dt><dd 
class="description">&#8220;DMA overrun&#8221;. This shouldn&#8217;t happen. Try booting again.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x09</span> </dt><dd 
class="description">&#8220;DMA attempt across 64k boundary&#8221;. This shouldn&#8217;t happen, but may inicate a disk geometry
     mis-match. Try omitting the <span 
class="cmtt-10x-x-109">compact </span>option. You may need to specify the disk geometry
     yourself.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x0C</span> </dt><dd 
class="description">&#8220;Invalid media&#8221;. This shouldn&#8217;t happen and might be caused by a media error. Try booting
     again.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x10</span> </dt><dd 
class="description">&#8220;CRC error&#8221;. A media error has been detected. Try booting several times, running the map
     installer a second time (to put the map file at some other physical location or to write &#8220;good
     data&#8221; over the bad spot), mapping out the bad sectors/tracks and, if all else fails, replacing
     the media.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x11</span> </dt><dd 
class="description">&#8220;ECC  correction  successful&#8221;.  A  read  error  occurred,  but  was  corrected.  LILO&#x00A0;does  not
     recognize this condition and aborts the load process anyway. A second load attempt should
     succeed.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x20</span> </dt><dd 
class="description">&#8220;Controller error&#8221;. This shouldn&#8217;t happen.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x40</span> </dt><dd 
class="description">&#8220;Seek failure&#8221;. This might be a media problem. Try booting again.
     </dd><dt class="description">
<span 
class="cmtt-10x-x-109">0x80</span> </dt><dd 
class="description">&#8220;Disk timeout&#8221;. The disk or the drive isn&#8217;t ready. Either the media is bad or the disk isn&#8217;t
     spinning. If you&#8217;re booting from a floppy, you might not have closed the drive door. Otherwise,
     trying to boot again might help.
     </dd><dt class="description">

<span 
class="cmtt-10x-x-109">0xBB</span> </dt><dd 
class="description">&#8220;BIOS error&#8221;. This shouldn&#8217;t happen. Try booting again. If the problem persists, removing the
     <span 
class="cmtt-10x-x-109">compact </span>option or adding/removing <span 
class="cmtt-10x-x-109">linear </span>or <span 
class="cmtt-10x-x-109">lba32 </span>might help.</dd></dl>
<!--l. 3252--><p class="noindent" >If the error occurred during a write operation, the error code (two hex digits) is prefixed with a &#8220;W&#8221;.
Although write errors don&#8217;t affect the boot process, they might indicate a severe problem, because
they usually imply that LILO&#x00A0;has tried to write to an invalid location. If spurious write errors
occur on a system, it might be a good idea to configure LILO&#x00A0;to run read-only (see section
<a 
href="#x1-660005.1.5">5.1.5<!--tex4ht:ref: cfgmf --></a>).
</p><!--l. 3259--><p class="noindent" >Generally, invalid geometry and attempts to use more than two disks without a very modern BIOS may
yield misleading error codes. Please check carefully if <span 
class="cmtt-10x-x-109">/sbin/lilo </span>doesn&#8217;t emit any warnings. Then try
using the <span 
class="cmtt-10x-x-109">linear </span>or <span 
class="cmtt-10x-x-109">lba32 </span>option (see section <a 
href="#x1-430004.2.2">4.2.2<!--tex4ht:ref: cfgglo --></a>).
</p><!--l. 3265--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">6.3   </span> <a 
 id="x1-810006.3"></a>Other problems</h4>
<!--l. 3268--><p class="noindent" >This section contains a collection of less common problems that have been observed. See also section <a 
href="#x1-730005.4">5.4<!--tex4ht:ref: instoth --></a> for
general remarks on using LILO&#x00A0;with other operating systems. Some of the problems are obscure and so are
the work-arounds.
</p>
     <ul class="itemize1">
     <li class="itemize">If LILO&#x00A0;doesn&#8217;t go away even if you erase its files, format your Linux partition, etc., you&#8217;ve
     probably installed LILO&#x00A0;as your MBR and you&#8217;ve forgotten to deinstall it before deleting its
     files. See section <a 
href="#x1-720005.3">5.3<!--tex4ht:ref: deinst --></a> for what you can do now.
     </li>
     <li class="itemize">For yet unknown reasons, LILO&#x00A0;may fail on some systems with AMI BIOS if the &#8220;Hard Disk
     Type 47 RAM area&#8221; is set to &#8220;0:300&#8221; instead of &#8220;DOS 1K&#8221;.
     </li>
     <li class="itemize">Some disk controller BIOSes perform disk geometry/address translations that are incompatible
     with the way the device&#8217;s geometry is seen from Linux, i.e. without going through the BIOS.
     Particularly, large IDE disks and some PCI SCSI controllers appear to have this problem. In
     such cases, either the translated geometry has to be specified in a <span 
class="cmtt-10x-x-109">disk </span>section or the sector
     address translation can be deferred by using the <span 
class="cmtt-10x-x-109">linear </span>option. In a setup where floppies are
     not normally used for booting, the <span 
class="cmtt-10x-x-109">linear </span>approach should be preferred, because this avoids
     the risk of specifying incorrect numbers.
     </li>
     <li class="itemize">OS/2 is said to be bootable from a logical partition with LILO&#x00A0;acting as the primary boot
     selector if LILO&#x00A0;is installed on the MBR, the OS/2 BootManager is on an active primary
     partition and LILO&#x00A0;boots BootManager. Putting LILO&#x00A0;on an extended partition instead is
     said to crash the OS/2 FDISK in this scenario.
     <!--l. 3298--><p class="noindent" >Note  that  booting  LILO&#x00A0;from  BootManager  (so  BootManager  is  the  primary  selector)  or
     booting OS/2 directly from a primary partition (without BootManager) should generally work.
     See also section <a 
href="#x1-730005.4">5.4<!--tex4ht:ref: instoth --></a>.

     </p></li>
     <li class="itemize">Windows NT is reported to be bootable with LILO&#x00A0;when LILO&#x00A0;acts as the MBR and the
     Windows NT boot loader is on the DOS partition. However, NT&#8217;s disk manager complains
     about LILO&#8217;s MBR when trying to edit the partition table.
     </li>
     <li class="itemize">Some PC UNIX systems (SCO and Unixware have been reported to exhibit this problem)
     depend on their partition being active. See section <a 
href="#x1-530004.5">4.5<!--tex4ht:ref: ptman --></a> for how this can be accomplished.
     </li>
     <li class="itemize">Future Domain TMC-1680 adapters with the BIOS versions 3.4 and 3.5 assign BIOS device
     numbers in the wrong order, e.g. on a two-disk system, <span 
class="cmtt-10x-x-109">/dev/sda </span>becomes <span 
class="cmtt-10x-x-109">0x81 </span>and <span 
class="cmtt-10x-x-109">/dev/sdb</span>
     becomes <span 
class="cmtt-10x-x-109">0x80</span>. This can be fixed with the following <span 
class="cmtt-10x-x-109">disk </span>section:<br 
class="newline" /><span class="obeylines-h"><span class="verb"><span 
class="cmtt-10x-x-109">disk=/dev/sda</span><span 
class="cmtt-10x-x-109">&#x00A0;bios=0x81</span><span 
class="cmtt-10x-x-109">&#x00A0;disk=/dev/sdb</span><span 
class="cmtt-10x-x-109">&#x00A0;bios=0x80</span></span></span><br 
class="newline" />Note that this is only valid for a two-disk system. In three-disk systems, <span 
class="cmtt-10x-x-109">/dev/sdc </span>would
     become <span 
class="cmtt-10x-x-109">0x80</span>, etc. Also, single-disk systems don&#8217;t have this problem (and the &#8220;fix&#8221; would break
     them).
     </li>
     <li class="itemize">Some BIOSes don&#8217;t properly recognize disks with an unusual partition table (e.g. without any
     partition marked active) and refuse to boot from them. This can also affect the second hard
     disk and the problem may only occur if the system is booted in a particular way (e.g. only after
     a cold boot).
     </li>
     <li class="itemize">On some systems, using <span 
class="cmtt-10x-x-109">linear </span>and <span 
class="cmtt-10x-x-109">compact </span>or <span 
class="cmtt-10x-x-109">lba32 </span>and <span 
class="cmtt-10x-x-109">compact </span>together leads to a boot
     failure. The exact circumstances under which this happens are still unknown.
     </li>
     <li class="itemize">If the kernel crashes after booting on a multi-processor system, LILO&#x00A0;may have overwritten
     data structures set up by the BIOS. Try the option <span 
class="cmtt-10x-x-109">LARGE</span><span 
class="cmtt-10x-x-109">_EBDA </span>in this case.</li></ul>
<div class="center" 
>
<!--l. 3334--><p class="noindent" >
</p><!--l. 3335--><p class="noindent" ><span 
class="cmti-10x-x-109">Last updated by John R. Coffman on July 17, 2000</span><br />
<span 
class="cmti-10x-x-109">reconstructed by Joachim Wiedorn on January 29, 2011</span></p></div>
 
</body></html> 



